nixbot

builds

failed horae-tests-0.1.0 checks.x86_64-linux.tests · build #497 · raw

unpackPhase
1unpacking source archive /nix/store/apzpj4c53l8x39silj7ymbn8w1g5l0fb-source2source root is source
patchPhase
3Executing configureCargoCommonVars4decompressing cargo artifacts from /nix/store/p0fga5r55aw5iwdy8h0dpr32lhcczl5i-horae-checks-deps-0.1.0/target.tar.zst to target5patchPhase completed in 55 seconds
configurePhase
6will append /build/source/.cargo-home/config.toml with contents of /nix/store/i0bj632any4bjpvnl84zc2h7cq8zn0mz-vendor-cargo-deps/config.toml7default configurePhase, nothing to do
buildPhase
8+++ command cargo nextest run -p horae-core --test-threads 489 Compiling proc-macro2 v1.0.10610 Compiling serde_core v1.0.22811 Compiling serde v1.0.22812 Compiling num-traits v0.2.1913 Compiling quote v1.0.4614 Compiling syn v2.0.11815 Compiling uuid v1.23.416 Compiling serde_derive v1.0.22817 Compiling thiserror-impl v2.0.1818 Compiling thiserror v2.0.1819 Compiling chrono v0.4.4520 Compiling horae-core v0.1.0 (/build/source/crates/core)21 Finished `test` profile [unoptimized + debuginfo] target(s) in 17.42s22------------23 Nextest run ID 95c60f7e-d6cb-4f98-a86e-070e8727b9d7 with nextest profile: default24 Starting 121 tests across 1 binary25 Running [ 00:00:00] 0/121: 7 running, 0 passed, 0 skipped 26 [ 00:00:00] horae-core ed_alert_threshold_is_exact_without_rounding27 [ 00:00:00] horae-core ert_accepts_zero_percent_but_not_zero_budget28 [ 00:00:00] horae-core ::a_single_jump_announces_every_crossed_band29 [ 00:00:00] horae-core jects_invalid_inputs_and_widens_large_values30 [ 00:00:00] horae-core percentage_rounds_clamps_and_never_overflows31 [ 00:00:00] horae-core ::tests::current_band_is_the_highest_reached32 Running [ 00:00:00] 0/121: 7 running, 0 passed, 0 skipped 33 [ 00:00:00] horae-core ed_alert_threshold_is_exact_without_rounding34 [ 00:00:00] horae-core ert_accepts_zero_percent_but_not_zero_budget35 [ 00:00:00] horae-core ::a_single_jump_announces_every_crossed_band36 [ 00:00:00] horae-core jects_invalid_inputs_and_widens_large_values37 [ 00:00:00] horae-core percentage_rounds_clamps_and_never_overflows38 [ 00:00:00] horae-core ::tests::current_band_is_the_highest_reached39 PASS [ 0.021s] horae-core client::tests::default_rate_preserves_absence_zero_and_exact_large_amounts40 Running [ 00:00:00] > 1/121: 47 running, 1 passed, 0 skipped 41 [ 00:00:00] horae-core ed_alert_threshold_is_exact_without_rounding42 [ 00:00:00] horae-core ert_accepts_zero_percent_but_not_zero_budget43 [ 00:00:00] horae-core ::a_single_jump_announces_every_crossed_band44 [ 00:00:00] horae-core jects_invalid_inputs_and_widens_large_values45 [ 00:00:00] horae-core percentage_rounds_clamps_and_never_overflows46 [ 00:00:00] horae-core ::tests::current_band_is_the_highest_reached47 [ 00:00:00] horae-core dget::tests::each_crossing_is_announced_once48 [ 00:00:00] horae-core elow_a_band_does_not_fire_but_current_resets49 Running [ 00:00:00] ===> 59/121: 48 running, 59 passed, 0 skipped 50 [ 00:00:00] horae-core high_precision_without_intermediate_overflow51 [ 00:00:00] horae-core s::conversion_matches_exact_scaled_rationals52 [ 00:00:00] horae-core occurrence_counter_numbers_repeats_from_zero53 [ 00:00:00] horae-core keys::tests::task_key_shared_across_projects54 [ 00:00:00] horae-core cation_handles_empty_zero_and_full_discounts55 [ 00:00:00] horae-core s_largest_remainder_then_stable_source_order56 [ 00:00:00] horae-core d_fee_contribution_leaves_discount_available57 [ 00:00:00] horae-core _apply_discount_before_non_compounding_taxes58 PASS [ 0.021s] horae-core client::tests::profile_rejects_unsupported_currency_and_null_billing_fields59 PASS [ 0.021s] horae-core client::tests::profile_accepts_supported_currencies_and_unicode_character_limit60 PASS [ 0.028s] horae-core budget::tests::configured_alert_accepts_zero_percent_but_not_zero_budget61 PASS [ 0.027s] horae-core duration::tests::parse_rejects_negative_non_finite_and_malformed_values62 PASS [ 0.030s] horae-core importers::harvest::convert::tests::money_rounds_third_decimal_half_up63 PASS [ 0.029s] horae-core duration::tests::format_clamps_negative_to_zero64 PASS [ 0.030s] horae-core importers::harvest::convert::tests::money_common_values_are_exact65 PASS [ 0.032s] horae-core budget::tests::no_band_for_zero_or_missing_budget66 PASS [ 0.020s] horae-core importers::harvest::convert::tests::negative_is_rejected67 PASS [ 0.035s] horae-core importers::harvest::keys::tests::normalize_trims_and_case_folds68 PASS [ 0.026s] horae-core budget::tests::configured_alert_threshold_is_exact_without_rounding69 PASS [ 0.025s] horae-core budget::tests::current_band_is_the_highest_reached70 PASS [ 0.023s] horae-core importers::harvest::keys::tests::normalize_matches_sql_harvest_norm_contract71 PASS [ 0.036s] horae-core importers::harvest::convert::tests::money_round_trip_against_exporter_transform72 PASS [ 0.025s] horae-core budget::tests::configured_alert_rejects_invalid_inputs_and_widens_large_values73 PASS [ 0.026s] horae-core budget::tests::display_percentage_rounds_clamps_and_never_overflows74 PASS [ 0.042s] horae-core importers::harvest::convert::tests::leading_and_trailing_forms_parse75 PASS [ 0.038s] horae-core duration::tests::parse_colon76 PASS [ 0.039s] horae-core duration::tests::parse_decimal_rounds_half_minutes_exactly77 PASS [ 0.039s] horae-core duration::tests::format_round_trip78 PASS [ 0.039s] horae-core budget::tests::drop_below_a_band_does_not_fire_but_current_resets79 PASS [ 0.040s] horae-core client::tests::optional_text_normalizes_only_blank_fields80 PASS [ 0.042s] horae-core importers::harvest::keys::tests::composite_components_do_not_collide81 PASS [ 0.043s] horae-core importers::harvest::convert::tests::hours_common_values_are_exact82 PASS [ 0.044s] horae-core budget::tests::a_single_jump_announces_every_crossed_band83 PASS [ 0.043s] horae-core importers::harvest::keys::tests::client_key_equal_across_case_and_whitespace84 PASS [ 0.041s] horae-core budget::tests::large_values_do_not_overflow85 Running [ 00:00:00] ===> 59/121: 48 running, 59 passed, 0 skipped 86 [ 00:00:00] horae-core high_precision_without_intermediate_overflow87 [ 00:00:00] horae-core s::conversion_matches_exact_scaled_rationals88 [ 00:00:00] horae-core occurrence_counter_numbers_repeats_from_zero89 [ 00:00:00] horae-core keys::tests::task_key_shared_across_projects90 [ 00:00:00] horae-core cation_handles_empty_zero_and_full_discounts91 [ 00:00:00] horae-core s_largest_remainder_then_stable_source_order92 [ 00:00:00] horae-core d_fee_contribution_leaves_discount_available93 [ 00:00:00] horae-core _apply_discount_before_non_compounding_taxes94 PASS [ 0.043s] horae-core budget::tests::each_crossing_is_announced_once95 PASS [ 0.043s] horae-core importers::harvest::convert::tests::round_half_up_at_the_boundary96 PASS [ 0.045s] horae-core budget::tests::over_budget_fires_even_without_a_configured_100_band97 PASS [ 0.040s] horae-core duration::tests::parse_decimal98 PASS [ 0.041s] horae-core duration::tests::minutes_between_is_exact_no_minimum99 PASS [ 0.044s] horae-core duration::tests::format_hhmm_pads_minutes100 PASS [ 0.044s] horae-core duration::tests::parse_rejects_colon_overflow_without_panicking101 PASS [ 0.044s] horae-core importers::harvest::convert::tests::conversion_preserves_the_i64_boundary_and_rejects_rounding_past_it102 PASS [ 0.044s] horae-core importers::harvest::convert::tests::high_precision_fraction_straddles_the_half_minute_exactly103 PASS [ 0.045s] horae-core duration::tests::parse_rejects_excessive_decimal_precision_and_numerator104 PASS [ 0.051s] horae-core client::tests::profile_rejects_blank_overlong_and_null_names105 PASS [ 0.011s] horae-core importers::harvest::types::tests::archived_errors_and_new_inline_errors_reconcile_across_batches106 PASS [ 0.010s] horae-core importers::harvest::types::tests::import_modes_display_their_wire_names107 PASS [ 0.055s] horae-core duration::tests::parse_round_trips_each_minute_in_a_day108 PASS [ 0.050s] horae-core importers::harvest::convert::tests::hours_round_trip_against_exporter_transform109 PASS [ 0.009s] horae-core importers::harvest::types::tests::does_not_reconcile_when_an_errored_count_has_no_reported_error110 PASS [ 0.053s] horae-core importers::harvest::convert::tests::conversion_reports_precision_and_numerator_limits111 PASS [ 0.010s] horae-core importers::harvest::types::account_switch_tests::account_switch_requires_binding_and_no_imports_or_active_work112 PASS [ 0.048s] horae-core client::tests::default_rate_rejects_negative_fractional_cent_overflow_and_invalid_text113 PASS [ 0.011s] horae-core invoice::tests::discount_allocation_supports_maximum_representable_subtotal114 PASS [ 0.010s] horae-core money::tests::parse_cents_reads_whole_and_fractional_amounts115 PASS [ 0.056s] horae-core importers::harvest::convert::tests::garbage_is_rejected116 PASS [ 0.060s] horae-core duration::tests::parse_preserves_u32_boundary_without_saturating117 PASS [ 0.011s] horae-core importers::harvest::types::tests::reconciles_when_errored_counts_match_collected_errors118 PASS [ 0.057s] horae-core importers::harvest::convert::tests::conversion_rejects_unrepresentable_scaled_values_without_panicking119 Running [ 00:00:00] ===> 59/121: 48 running, 59 passed, 0 skipped 120 [ 00:00:00] horae-core high_precision_without_intermediate_overflow121 [ 00:00:00] horae-core s::conversion_matches_exact_scaled_rationals122 [ 00:00:00] horae-core occurrence_counter_numbers_repeats_from_zero123 [ 00:00:00] horae-core keys::tests::task_key_shared_across_projects124 [ 00:00:00] horae-core cation_handles_empty_zero_and_full_discounts125 [ 00:00:00] horae-core s_largest_remainder_then_stable_source_order126 [ 00:00:00] horae-core d_fee_contribution_leaves_discount_available127 [ 00:00:00] horae-core _apply_discount_before_non_compounding_taxes128 PASS [ 0.013s] horae-core importers::harvest::keys::tests::occurrence_counter_keys_are_independent129 PASS [ 0.013s] horae-core invoice::tests::discount_allocation_conserves_header_amount_and_bounds_each_line130 PASS [ 0.014s] horae-core importers::harvest::keys::tests::project_key_falls_back_to_client_and_name131 PASS [ 0.012s] horae-core invoice::tests::discount_allocation_rejects_negative_lines_and_subtotal_overflow132 PASS [ 0.015s] horae-core importers::harvest::keys::tests::project_key_prefers_code_when_present133 PASS [ 0.016s] horae-core importers::harvest::keys::tests::time_entry_key_distinguishes_and_matches134 Running [ 00:00:00] ===> 59/121: 48 running, 59 passed, 0 skipped 135 [ 00:00:00] horae-core high_precision_without_intermediate_overflow136 [ 00:00:00] horae-core s::conversion_matches_exact_scaled_rationals137 [ 00:00:00] horae-core occurrence_counter_numbers_repeats_from_zero138 [ 00:00:00] horae-core keys::tests::task_key_shared_across_projects139 [ 00:00:00] horae-core cation_handles_empty_zero_and_full_discounts140 [ 00:00:00] horae-core s_largest_remainder_then_stable_source_order141 [ 00:00:00] horae-core d_fee_contribution_leaves_discount_available142 [ 00:00:00] horae-core _apply_discount_before_non_compounding_taxes143 Running [ 00:00:00] =====> 80/121: 41 running, 80 passed, 0 skipped 144 [ 00:00:00] horae-core keys::tests::task_key_shared_across_projects145 [ 00:00:00] horae-core _apply_discount_before_non_compounding_taxes146 [ 00:00:00] horae-core invoice_adjustments_round_components_half_up147 [ 00:00:00] horae-core invoice::tests::line_amount_90_minutes148 [ 00:00:00] horae-core invoice::tests::line_amount_half_hour149 [ 00:00:00] horae-core invoice::tests::line_amount_exact_hour150 [ 00:00:00] horae-core invoice::tests::line_amount_odd_minutes151 [ 00:00:00] horae-core invoice::tests::line_amount_zero_rate152 PASS [ 0.037s] horae-core money::tests::parse_cents_is_exact_where_a_float_would_drift153 PASS [ 0.039s] horae-core importers::harvest::keys::tests::occurrence_counter_numbers_repeats_from_zero154 PASS [ 0.088s] horae-core importers::harvest::convert::tests::conversion_handles_high_precision_without_intermediate_overflow155 PASS [ 0.039s] horae-core invoice::tests::resolve_rate_cascade156 PASS [ 0.039s] horae-core invoice::tests::line_amount_rounds_half_cents_up_not_to_even157 PASS [ 0.043s] horae-core invoice::tests::discount_allocation_handles_empty_zero_and_full_discounts158 PASS [ 0.046s] horae-core invoice::tests::discounted_fee_contribution_leaves_discount_available159 PASS [ 0.095s] horae-core importers::harvest::convert::tests::conversion_matches_exact_scaled_rationals160 PASS [ 0.008s] horae-core time_of_day::tests::format_round_trips161 PASS [ 0.046s] horae-core invoice::tests::line_amount_accepts_large_representable_amounts162 PASS [ 0.051s] horae-core money::tests::addition_retains_currency_checks_and_representable_boundaries163 PASS [ 0.056s] horae-core money::tests::parse_cents_rejects_what_it_cannot_represent164 PASS [ 0.051s] horae-core invoice::tests::invoice_adjustments_reject_negative_subtotal_and_overflow165 PASS [ 0.018s] horae-core time_of_day::tests::clamp_to_day_prevents_crossing_midnight166 PASS [ 0.051s] horae-core invoice::tests::line_amount_zero_minutes167 PASS [ 0.054s] horae-core invoice::tests::line_amount_rejects_unrepresentable_results168 PASS [ 0.020s] horae-core state::tests::member_submit_and_reopen169 PASS [ 0.019s] horae-core state::tests::only_manager_can_approve170 PASS [ 0.075s] horae-core invoice::tests::discount_allocation_uses_largest_remainder_then_stable_source_order171 PASS [ 0.070s] horae-core money::tests::addition_rejects_overflow_in_both_directions172 PASS [ 0.042s] horae-core time_of_day::tests::format_12h_matches_harvest_style173 Running [ 00:00:00] =====> 80/121: 41 running, 80 passed, 0 skipped 174 [ 00:00:00] horae-core keys::tests::task_key_shared_across_projects175 [ 00:00:00] horae-core _apply_discount_before_non_compounding_taxes176 [ 00:00:00] horae-core invoice_adjustments_round_components_half_up177 [ 00:00:00] horae-core invoice::tests::line_amount_90_minutes178 [ 00:00:00] horae-core invoice::tests::line_amount_half_hour179 [ 00:00:00] horae-core invoice::tests::line_amount_exact_hour180 [ 00:00:00] horae-core invoice::tests::line_amount_odd_minutes181 [ 00:00:00] horae-core invoice::tests::line_amount_zero_rate182 Running [ 00:00:00] =======> 116/121: 41 running, 80 passed, 0 skipped 183 [ 00:00:00] horae-core keys::tests::task_key_shared_across_projects184 [ 00:00:00] horae-core _apply_discount_before_non_compounding_taxes185 [ 00:00:00] horae-core invoice_adjustments_round_components_half_up186 [ 00:00:00] horae-core invoice::tests::line_amount_90_minutes187 [ 00:00:00] horae-core invoice::tests::line_amount_half_hour188 [ 00:00:00] horae-core invoice::tests::line_amount_exact_hour189 [ 00:00:00] horae-core invoice::tests::line_amount_odd_minutes190 [ 00:00:00] horae-core invoice::tests::line_amount_zero_rate191 PASS [ 0.102s] horae-core project::tests::monthly_fee_dates_reject_invalid_calendar_inputs192 PASS [ 0.110s] horae-core project::tests::basics_reject_overlong_code_and_unsupported_currency193 PASS [ 0.110s] horae-core invoice::tests::line_amount_exact_hour194 PASS [ 0.111s] horae-core invoice::tests::invoice_adjustments_apply_discount_before_non_compounding_taxes195 PASS [ 0.111s] horae-core invoice::tests::line_amount_half_hour196 PASS [ 0.060s] horae-core week::tests::configured_week_contains_each_day_for_all_seven_start_days197 PASS [ 0.112s] horae-core project::tests::fee_schedules_validate_amounts_and_milestone_total198 PASS [ 0.109s] horae-core project::tests::percentage_preserves_exact_hundredths199 PASS [ 0.115s] horae-core invoice::tests::invoice_adjustments_round_components_half_up200 PASS [ 0.112s] horae-core project::tests::fee_schedules_reject_missing_overlong_and_excessive_milestones201 PASS [ 0.112s] horae-core project::tests::monthly_fee_dates_follow_calendar_months202 PASS [ 0.076s] horae-core time_of_day::tests::parse_reads_24h203 PASS [ 0.117s] horae-core invoice::tests::line_amount_odd_minutes204 PASS [ 0.119s] horae-core invoice::tests::line_amount_90_minutes205 PASS [ 0.119s] horae-core invoice::tests::line_amount_zero_rate206 PASS [ 0.119s] horae-core invoice::tests::selected_rate_mode_ignores_unselected_rate_sources207 PASS [ 0.119s] horae-core money::tests::format_cents_groups_thousands_and_keeps_sign208 PASS [ 0.119s] horae-core money::tests::format_cents_plain_keeps_sign_below_one_unit209 PASS [ 0.122s] horae-core invoice::tests::selected_rate_keeps_zero_and_explicit_missing_project_rate210 PASS [ 0.077s] horae-core time_of_day::tests::snap_rounds_to_nearest_step211 PASS [ 0.123s] horae-core importers::harvest::keys::tests::task_key_shared_across_projects212 PASS [ 0.080s] horae-core time_of_day::tests::parse_reads_12h_including_edges213 PASS [ 0.113s] horae-core rounding::tests::result_is_multiple_of_inc214 PASS [ 0.121s] horae-core project::tests::basics_accept_same_day_but_reject_reversed_dates215 PASS [ 0.119s] horae-core project::tests::basics_reject_blank_and_overlong_names216 PASS [ 0.070s] horae-core week::tests::maps_any_weekday_to_its_monday217 PASS [ 0.070s] horae-core week::tests::configured_week_reports_an_unrepresentable_start218 PASS [ 0.076s] horae-core types::tests::budget_kind_wire_strings_match_db_enum219 Running [ 00:00:00] =======> 119/121: 2 running, 119 passed, 0 skipped 220 [ 00:00:00] horae-core rounding::tests::nearest_ties_round_up221 [ 00:00:00] horae-core sts::managers_invoice_open_and_approved_time222223224225226227228 PASS [ 0.082s] horae-core time_of_day::tests::parse_rejects_out_of_range_and_garbage229 PASS [ 0.120s] horae-core project::tests::basics_accept_supported_currencies_and_optional_dates230 PASS [ 0.116s] horae-core rounding::tests::identity_when_inc_zero231 PASS [ 0.118s] horae-core project::tests::payment_terms_support_receipt_and_checked_days232 PASS [ 0.117s] horae-core rounding::tests::effective_minutes_respect_frozen_history_including_zero233 PASS [ 0.118s] horae-core project::tests::monetary_budgets_are_only_available_for_time_and_materials234 PASS [ 0.118s] horae-core money::tests::parse_cents_tolerates_grouping_spaces_and_signs235 PASS [ 0.120s] horae-core state::tests::invoiced_is_final236 PASS [ 0.123s] horae-core rounding::tests::up_and_down237 PASS [ 0.082s] horae-core week::tests::configured_week_can_start_in_the_previous_year238 PASS [ 0.125s] horae-core project::tests::percentage_rejects_invalid_precision_range_and_syntax239 Running [ 00:00:00] =======> 119/121: 2 running, 119 passed, 0 skipped 240 [ 00:00:00] horae-core rounding::tests::nearest_ties_round_up241 [ 00:00:00] horae-core sts::managers_invoice_open_and_approved_time242243244245246247248 PASS [ 0.127s] horae-core rounding::tests::nearest_ties_round_up249 PASS [ 0.123s] horae-core state::tests::managers_invoice_open_and_approved_time250------------251 Summary [ 0.204s] 121 tests run: 121 passed, 0 skipped252 Running [ 00:00:00] ======== 121/121: 2 running, 119 passed, 0 skipped 253 [ 00:00:00] horae-core rounding::tests::nearest_ties_round_up254 [ 00:00:00] horae-core sts::managers_invoice_open_and_approved_time255256257258259260261The files belonging to this database system will be owned by user "nixbld".262This user must also own the server process.263264The database cluster will be initialized with locale "C".265The default text search configuration will be set to "english".266267Data page checksums are disabled.268269fixing permissions on existing directory /build/tmp.YQDCdsTaFZ ... ok270creating subdirectories ... ok271selecting dynamic shared memory implementation ... posix272selecting default "max_connections" ... 100273selecting default "shared_buffers" ... 128MB274selecting default time zone ... UTC275creating configuration files ... ok276running bootstrap script ... ok277performing post-bootstrap initialization ... ok278syncing data to disk ... ok279280initdb: warning: enabling "trust" authentication for local connections281initdb: hint: You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb.282283Success. You can now start the database server using:284285 pg_ctl -D /build/tmp.YQDCdsTaFZ -l logfile start286287waiting for server to start.... done288server started289+++ command cargo test -p horae --features server -- --test-threads 48290 Compiling horae v0.1.0 (/build/source/crates/horae)291 Compiling horae-core v0.1.0 (/build/source/crates/core)292 Finished `test` profile [unoptimized + debuginfo] target(s) in 7m 05s293 Running unittests src/main.rs (target/debug/deps/horae-0767924faa118e50)294295running 839 tests296test auth::oidc::tests::extra_audiences_are_trusted_only_when_listed ... ok297test auth::oidc::tests::no_account_is_denied_not_provisioned ... ok298test auth::page::tests::dev_variant_offers_the_admin_bypass_and_no_fake_controls ... ok299test auth::oidc::tests::first_login_links_subject_via_verified_email ... ok300test auth::oidc::tests::subject_match_takes_precedence_over_email ... ok301test auth::oidc::tests::subject_match_logs_in_without_relinking ... ok302test auth::oidc::tests::deactivated_subject_match_is_denied ... ok303test auth::oidc::tests::deactivated_email_match_is_denied ... ok304test auth::oidc::tests::unverified_email_is_not_matched ... ok305test cli::tests::environment_probe ... ok306test auth::page::tests::configured_label_is_html_escaped ... ok307test auth::page::tests::oidc_variant_uses_the_configured_label_and_hands_off_to_start ... ok308test cli::imports::tests::session_rejects_public_permissions_and_symlinks ... ok309test config::tests::environment::environment_probe ... ok310test config::tests::dev_login_is_refused_off_loopback ... ok311test config::tests::dev_login_is_allowed_on_loopback ... ok312test cli::imports::tests::session_rejects_cookie_header_injection_without_echoing_the_value ... ok313test cli::imports::tests::session_rejects_plaintext_remote_and_credential_bearing_urls ... ok314test config::tests::without_dev_login_any_bind_is_fine ... ok315test cli::imports::tests::missing_session_is_a_structured_configuration_failure ... ok316test config::tests::environment::example_environment_can_configure_all_required_oidc_and_harvest_fields ... ok317test config::tests::environment::empty_environment_has_no_authentication_or_plugin_credentials ... ok318test config::tests::environment::obsolete_authentication_variables_do_not_configure_the_server ... ok319test config::tests::environment::partial_oidc_configuration_remains_disabled_without_a_callback ... ok320test cli::imports::tests::retry_snapshot_is_compatible_with_missing_and_future_values ... ok321test harvest::pagination_tests::harvest_pagination_total_pages_does_not_overflow ... ok322test cli::tests::remote_commands_reject_conflicting_or_unbounded_options ... ok323test cli::tests::remote_import_and_job_commands_accept_the_documented_arguments ... ok324test cli::tests::default_command_uses_the_same_defaults_and_environment_as_serve ... ok325test cli::imports::tests::private_session_accepts_https_and_loopback_only ... ok326test config::tests::environment::job_attempt_limit_uses_the_documented_environment_variable ... ok327test cli::tests::default_command_rejects_invalid_environment_ports ... ok328test cli::imports::tests::csv_named_pipe_is_rejected_without_waiting_for_a_writer ... ok329test harvest::tests::page_window_defaults_and_checked_offsets ... ok330test cli::imports::tests::redirects_are_not_followed_or_exposed_as_server_error_text ... ok331test cli::imports::tests::report_marks_confirmed_failed_outcomes_as_incomplete ... ok332test cli::imports::tests::malformed_submission_acknowledgement_retains_its_request_identity ... ok333test cli::imports::tests::cancellation_racing_completion_does_not_claim_cancellation_was_requested ... ok334test cli::imports::tests::api_submission_captures_generation_without_retrying_uncertain_acceptance ... ok335test cli::imports::tests::missing_and_mismatched_jobs_fail_without_substitution ... ok336test cli::imports::tests::invalid_csv_files_fail_before_contacting_the_server ... ok337test cli::imports::tests::status_and_wait_distinguish_failed_jobs_from_failed_reads ... ok338test importers::harvest::api_source::http::tests::cancelled_backoff_does_not_wait_or_retry ... ok339test importers::harvest::api_source::http::tests::cursor_links_are_authoritative_even_with_null_or_stale_page_numbers ... ok340test db::tests::pool_connections_force_custom_plans ... ok341test cli::imports::tests::archived_errors_publish_without_clobbering_and_preserve_the_prior_file_on_failure ... ok342test config::tests::environment::mail_environment_requires_a_complete_valid_configuration ... ok343test importers::harvest::api_source::http::tests::missing_next_cursor_is_not_silently_treated_as_completed ... ok344test importers::harvest::api_source::http::tests::pagination_cycle_detection_survives_restarting_after_every_page ... ok345test config::tests::environment::invalid_job_attempt_limits_reject_startup ... ok346test importers::harvest::api_source::http::tests::persisted_cursor_resumes_with_a_new_client_and_stays_complete_at_eof ... ok347test importers::harvest::api_source::http::tests::rejected_page_does_not_advance_the_cursor ... ok348test importers::harvest::api_source::http::tests::rejects_pagination_outside_the_authenticated_endpoint ... ok349test importers::harvest::api_source::http::tests::resumed_cursor_rejects_untrusted_destinations_and_invalid_state_before_http ... ok350test cli::imports::tests::ordinary_json_is_bounded_and_invalid_replies_are_not_echoed ... ok351test importers::harvest::api_source::tests::assembled_rows_convert_to_exact_minutes ... ok352test importers::harvest::api_source::tests::hours_render_as_exact_decimals ... ok353test importers::harvest::api_source::tests::assembles_rows_joining_parents_by_id ... ok354test importers::harvest::api_source::tests::json_exponents_expand_exactly_with_bounded_output ... ok355test importers::harvest::api_source::tests::http_page_preserves_decimal_values_before_integer_conversion ... ok356test importers::harvest::credentials::tests::bad_key_length_is_rejected ... ok357test importers::harvest::api_source::http::tests::http_pages_follow_cursor_and_preserve_headers_and_encoded_filter ... ok358test importers::harvest::api_source::http::tests::http_retries_429_but_never_follows_redirects_or_shortens_long_backoff ... ok359test config::tests::environment::secure_cookies_use_the_documented_prefixed_variable ... ok360test importers::harvest::api_source::http::tests::http_rejects_oversized_malformed_and_cyclic_pages ... ok361test importers::harvest::credentials::tests::decode_hex_rejects_bad_input ... ok362test importers::harvest::api_source::http::tests::slow_consumer_backpressures_http_and_cancellation_stops_further_pages ... ok363test importers::harvest::credentials::tests::encrypt_then_decrypt_round_trips ... ok364test cli::imports::tests::wait_deadline_caps_a_pending_request_without_cancelling_the_job ... ok365test cli::imports::tests::csv_upload_preserves_bytes_across_stream_chunk_boundaries ... ok366test importers::harvest::credentials::tests::nonce_makes_ciphertext_nondeterministic ... ok367test cli::imports::tests::small_csv_upload_preserves_immediate_authorization_rejections ... ok368test auth::oidc::tests::linking::existing_subject_wins_over_another_accounts_email ... ok369test importers::harvest::credentials::tests::wrong_key_fails_to_decrypt ... ok370test importers::harvest::csv_source::tests::bad_date_becomes_a_row_error_not_a_rejection ... ok371test importers::harvest::csv_source::tests::conflicting_email_aliases_error_only_the_affected_row ... ok372test importers::harvest::csv_source::tests::csv_records_preserve_multiline_unicode_across_single_byte_reads ... ok373test importers::harvest::csv_source::tests::cursor_beyond_upload_is_rejected_without_parsing_rows ... ok374test importers::harvest::csv_source::tests::cursor_resumes_after_multiline_unicode_and_preserves_error_locations ... ok375test importers::harvest::csv_source::tests::delivers_a_row_before_reading_the_rest_of_the_file ... ok376test importers::harvest::csv_source::tests::empty_file_is_rejected ... ok377test importers::harvest::csv_source::tests::identity_columns_are_required_and_cannot_repeat ... ok378test importers::harvest::csv_source::tests::invalid_utf8_errors_one_record_and_continues ... ok379test importers::harvest::csv_source::tests::missing_required_columns_is_rejected ... ok380test importers::harvest::csv_source::tests::names_stay_separate_from_optional_email ... ok381test importers::harvest::csv_source::tests::parse_bool_accepts_yes_variants ... ok382test importers::harvest::csv_source::tests::parses_rows_case_insensitively ... ok383test harvest::tests::a_manager_lists_users_with_their_rates ... ok384test auth::oidc::tests::linking::different_subjects_cannot_both_claim_an_unlinked_account ... ok385test importers::harvest::account_switch::tests::retry_and_change_are_serialized ... ok386test auth::oidc::tests::linking::deactivation_during_first_link_denies_login ... ok387test harvest::tests::a_member_cannot_filter_to_a_colleague ... ok388test harvest::tests::a_member_sees_only_their_own_time_entries ... ok389test harvest::tests::harvest_effective_minutes_match_sql_for_open_and_frozen_time ... ok390test harvest::tests::a_member_cannot_list_users ... ok391test importers::harvest::account_switch::tests::competing_change_and_submission_cannot_both_succeed ... ok392test harvest::tests::a_manager_sees_the_whole_org ... ok393test importers::harvest::account_switch::tests::running_jobs_block_change_and_old_execution_never_reaches_http ... ok394test importers::harvest::credentials::tests::migration_binds_existing_connections_without_changing_secrets_or_markers ... ok395test importers::harvest::account_switch::tests::a_b_a_keeps_old_callbacks_requests_and_retries_fenced ... ok396test harvest::tests::harvest_entry_rates_respect_selected_project_mode ... ok397test auth::oidc::tests::linking::unverified_email_cannot_link_an_account ... ok398test importers::harvest::account_switch::tests::queued_work_and_provenance_block_without_changing_binding ... ok399test importers::harvest::account_switch::tests::queue_acceptance_does_not_wait_for_the_import_session_lock ... ok400test importers::harvest::credentials::tests::another_account_cannot_replace_credentials_or_watermarks ... ok401test importers::harvest::credentials::tests::unidentified_legacy_provenance_requires_operator_review ... ok402test auth::oidc::tests::linking::simultaneous_logins_with_the_same_subject_are_allowed ... ok403test harvest::tests::harvest_marks_unbilled_non_billable_contexts_consistently ... ok404test harvest::pagination_tests::harvest_pagination_catalog_links_preserve_filters_and_break_name_ties ... ok405test harvest::tests::a_member_cannot_fetch_a_colleagues_entry ... ok406test importers::harvest::account_switch::tests::successful_change_preserves_business_rows_and_failure_rolls_back_secrets ... ok407test importers::harvest::credentials::tests::failed_credential_write_does_not_leave_an_account_binding ... ok408test importers::harvest::credentials::tests::connect_and_disconnect_share_import_exclusion_without_blocking_other_orgs ... ok409test importers::harvest::account_switch::tests::disconnect_and_reconnect_fence_callbacks_but_not_same_account_work ... ok410test importers::harvest::account_switch::tests::change_preserves_terminal_history_and_rejects_stale_confirmation ... ok411test importers::harvest::credentials::tests::connection_changes_work_with_a_single_connection_pool ... ok412test importers::harvest::credentials::tests::same_account_reconnect_rotates_encryption_without_resetting_watermarks ... ok413test importers::harvest::engine_tests::csv_streaming::measure_csv_durable_100k ... ignored, 100,000-row durable CSV measurement; run explicitly with --release --nocapture414test importers::harvest::engine_tests::csv_streaming::measure_csv_durable_large_catalog_100k ... ignored, 100,000-row durable CSV with 5,000 parent sets; run explicitly with --release --nocapture415test importers::harvest::engine_tests::csv_streaming::measure_csv_streaming_100k ... ignored, 100,000-row CSV measurement; run explicitly with --release --nocapture416test importers::harvest::engine_tests::csv_streaming::measure_csv_streaming_large_catalog_100k ... ignored, 100,000-row CSV with 5,000 parent sets; run explicitly with --release --nocapture417test importers::harvest::credentials::tests::concurrent_first_connections_cannot_bind_different_accounts ... ok418test importers::harvest::credentials::tests::disconnect_preserves_identity_and_provenance_for_the_original_account ... ok419test harvest::tests::harvest_entry_rates_follow_the_cascade_and_frozen_invoice_line ... ok420test db::tests::reset_empties_the_database_and_reapplies_migrations ... ok421test harvest::tests::members_cannot_read_own_project_rates_or_cost_overrides ... ok422test importers::harvest::engine_tests::api_connection_checks_work_with_a_single_connection_pool ... ok423test importers::harvest::engine_tests::csv_ambiguous_names_include_inactive_users_but_unique_email_disambiguates ... ok424test importers::harvest::account_switch::tests::competing_callbacks_and_confirmations_have_one_winner ... ok425test importers::harvest::engine_tests::cancelled_http_waiter_keeps_the_lock_until_its_worker_exits ... ok426test importers::harvest::engine_tests::lookup_cache::cold_query_callsite_on_untraced_thread_is_still_captured ... ok427test importers::harvest::engine_tests::bad_records_are_reported_and_run_continues ... ok428test importers::harvest::engine_tests::api_sync_adopts_entries_from_a_prior_csv_import ... ok429test importers::harvest::engine_tests::csv_malformed_file_is_rejected_with_no_writes ... ok430test importers::harvest::engine_tests::cancellation_rolls_back_rows_and_releases_the_import_session ... ok431test importers::harvest::engine_tests::csv_name_only_matches_one_org_user_and_reimports_without_duplicates ... ok432test importers::harvest::engine_tests::dry_run_writes_nothing_and_matches_commit ... ok433test importers::harvest::engine_tests::api_and_csv_share_the_lock_but_other_organizations_can_import ... ok434test importers::harvest::engine_tests::csv_name_only_dry_run_and_duplicate_occurrences_preserve_history ... ok435test importers::harvest::engine_tests::concurrent_imports_reject_overlap_without_collapsing_repeated_entries ... ok436test importers::harvest::credentials::tests::completed_credential_changes_allow_immediate_retries ... ok437test importers::harvest::engine_tests::csv_streaming::csv_preview_errors_and_repeated_rows_match_commit_and_reimport ... ok438test importers::harvest::engine_tests::distinct_harvest_ids_with_identical_fields_import_as_two ... ok439test importers::harvest::oauth::tests::authorize_url_carries_state_and_encoded_redirect ... ok440test importers::harvest::engine_tests::csv_import_populates_and_is_idempotent ... ok441test importers::harvest::oauth::tests::authorize_url_preserves_query_values_without_injecting_parameters ... ok442test importers::harvest::oauth_callback_tests::mismatched_state_is_rejected_without_a_code ... ok443test importers::harvest::oauth_callback_tests::missing_returned_state_is_rejected ... ok444test importers::harvest::oauth_callback_tests::account_policy_failures_return_safe_actionable_conflicts ... ok445test importers::harvest::oauth_callback_tests::missing_stored_state_is_rejected ... ok446test importers::harvest::oauth_callback_tests::provider_error_is_rejected_before_exchange ... ok447test importers::harvest::oauth_callback_tests::valid_matching_state_yields_the_code ... ok448test importers::harvest::oauth_callback_tests::valid_state_but_missing_code_is_rejected ... ok449test importers::harvest::report::tests::archived_report_round_trips_without_losing_error_accounting ... ok450test importers::harvest::report::tests::archive_metadata_cannot_masquerade_as_a_legacy_or_inconsistent_report ... ok451test importers::harvest::report::tests::legacy_report_preserves_its_counts_and_error_details ... ok452test importers::harvest::report::tests::serialized_report_has_a_supported_schema_version ... ok453test importers::harvest::report::tests::report_rejects_unsupported_and_invalid_versions ... ok454test importers::harvest::resolve::checkpoint_tests::run_cache_round_trip_preserves_identity_namespaces_and_occurrences ... ok455test importers::harvest::engine_tests::csv_name_fallback_requires_a_full_unique_name_and_never_overrides_email ... ok456test importers::harvest::engine_tests::csv_streaming::durable_csv_stale_commit_is_fenced_without_a_heartbeat ... ok457test importers::harvest::engine_tests::csv_streaming::cancelling_a_csv_waiting_for_more_bytes_releases_its_session ... ok458test importers::harvest::engine_tests::full_import_creates_all_levels_with_exact_minutes ... ok459test importers::harvest::engine_tests::failed_source_releases_the_session_and_rolls_back_partial_rows ... ok460test importers::harvest::engine_tests::lookup_cache::cached_project_task_still_validates_each_rows_rate ... ok461test importers::harvest::engine_tests::csv_streaming::csv_applies_before_eof_but_transport_failure_rolls_back_everything ... ok462test importers::harvest::engine_tests::edited_entry_still_matched_by_provenance ... ok463test importers::harvest::engine_tests::import_rejects_ambiguous_normalized_email_without_partial_writes ... ok464test importers::harvest::engine_tests::csv_streaming::csv_sql_backpressure_stops_reading_later_input_rows ... ok465test harvest::pagination_tests::harvest_pagination_empty_and_out_of_range_pages_keep_the_contract ... ok466test importers::harvest::engine_tests::lookup_cache::cached_email_and_full_name_do_not_share_a_namespace ... ok467test importers::harvest::engine_tests::completed_imports_allow_immediate_retries ... ok468test importers::harvest::engine_tests::csv_streaming::durable_csv_report_metadata_is_bounded_after_recovery ... ok469test importers::harvest::engine_tests::reimporting_identical_csv_rows_is_idempotent ... ok470test importers::harvest::engine_tests::watermark_advances_only_on_commit ... ok471test importers::harvest::engine_tests::csv_streaming::durable_csv_preview_crosses_batch_boundaries_without_committing_domain_data ... ok472test importers::harvest::streaming::tests::api_planning_policy_ends_with_the_transaction ... ok473test importers::harvest::engine_tests::lookup_cache::new_run_rechecks_previously_cached_user_for_ambiguity ... ok474test importers::harvest::streaming::durable::preview::tests::restoration_omits_unneeded_virtual_entries ... ok475test importers::harvest::engine_tests::submission_barrier_blocks_imported_time_entries ... ok476test importers::harvest::sync_tests::api_rejects_ambiguous_email_without_advancing_watermark ... ok477test importers::harvest::engine_tests::csv_streaming::durable_csv_cancel_joins_parser_and_preserves_committed_rows ... ok478test importers::harvest::engine_tests::lookup_cache::project_task_cache_distinguishes_both_sides_of_the_link ... ok479test importers::harvest::engine_tests::second_identical_run_creates_nothing ... ok480test importers::harvest::engine_tests::lookup_cache::lookup_index_migration_preserves_existing_ambiguous_identities ... ok481test importers::harvest::engine_tests::two_identical_csv_rows_import_as_two_entries ... ok482test importers::harvest::engine_tests::overflowing_decimals_fail_only_their_rows ... ok483test importers::harvest::resolve::preview::tests::rejects_foreign_parent_snapshots_before_restoring_any_rows ... ok484test importers::harvest::engine_tests::natural_key_reimport_normalizes_whitespace_and_ascii_case ... ok485test importers::harvest::engine_tests::lookup_cache::rolled_back_row_does_not_cache_user_or_project_task ... ok486test importers::harvest::resolve::preview::tests::checkpoint_restores_known_task_currency_and_keeps_old_currency_unknown ... ok487test importers::harvest::engine_tests::lookup_cache::repeated_rows_resolve_each_user_and_project_task_once ... ok488test importers::harvest::sync_tests::api_requires_email_even_when_full_name_matches ... ok489test importers::harvest::engine_tests::csv_streaming::durable_csv_preview_resumes_after_a_crash_without_recounting_rows ... ok490test importers::harvest::sync_tests::checkpoints::durable_api_cancellation_preserves_confirmed_pages_for_manual_retry ... ok491test importers::harvest::engine_tests::csv_streaming::durable_csv_preview_rejects_a_stale_next_batch ... ok492test importers::harvest::sync_tests::checkpoints::durable_api_preview_cancellation_preserves_confirmed_pages_for_manual_retry ... ok493test importers::harvest::engine_tests::csv_streaming::durable_csv_resumes_committed_batches_without_recounting_duplicate_rows ... ok494test importers::harvest::sync_tests::checkpoints::durable_api_preview_finalization_retry_does_not_repeat_completed_downloads ... ok495test importers::harvest::engine_tests::csv_streaming::durable_csv_cancel_preserves_its_completed_batches_for_manual_retry ... ok496test importers::harvest::sync_tests::checkpoints::durable_api_finalization_retry_does_not_repeat_completed_downloads ... ok497test importers::harvest::sync_tests::scale::api_100k_commit_and_reimport ... ignored, 100,000-entry scale measurement; run explicitly with --release --nocapture498test importers::harvest::sync_tests::scale::api_100k_dry_run ... ignored, 100,000-entry scale measurement; run explicitly with --release --nocapture499test importers::harvest::sync_tests::scale::api_durable_100k_commit_and_reimport ... ignored, 100,000-entry durable API measurement; run explicitly with --release --nocapture500test importers::harvest::sync_tests::scale::api_durable_100k_dry_run ... ignored, 100,000-entry durable API measurement; run explicitly with --release --nocapture501test importers::harvest::sync_tests::out_of_range_api_decimals_error_per_row_and_leave_retry_watermark ... ok502test importers::harvest::sync_tests::exact_api_decimals_survive_preview_commit_and_reimport ... ok503test importers::harvest::engine_tests::csv_streaming::durable_csv_reclaimed_lease_cannot_commit_the_next_batch ... ok504test importers::harvest::sync_tests::disconnect_and_reconnect_preserves_imported_records_and_exact_identity ... ok505test harvest::pagination_tests::harvest_pagination_malformed_filters_are_client_errors ... ok506test importers::harvest::sync_tests::missing_client_fallback_and_failed_project_savepoints_do_not_poison_cache ... ok507test importers::harvest::sync_tests::missing_source_timestamp_keeps_the_previous_watermark ... ok508test importers::harvest::engine_tests::csv_streaming::durable_csv_preview_cancel_preserves_simulation_for_manual_retry ... ok509test importers::harvest::sync_tests::empty_sync_does_not_invent_a_watermark ... ok510test importers::harvest::sync_tests::invalid_parent_blocks_dependent_time_but_other_catalog_records_survive ... ok511test importers::harvest::sync_tests::dry_run_leaves_data_provenance_and_watermark_unchanged ... ok512test importers::harvest::sync_tests::paging::durable_api_stale_commit_cannot_advance_data_or_watermark ... ok513test importers::harvest::sync_tests::paging::cancelled_page_consumer_retains_lock_until_worker_exits_and_rolls_back ... ok514test importers::harvest::sync_tests::failed_rows_are_available_to_the_next_incremental_retry ... ok515test importers::harvest::sync_tests::failed_client_propagates_to_project_and_entry_without_placeholder_records ... ok516test importers::harvest::engine_tests::large_run_reuses_parents_and_reconciles_totals ... ok517test importers::harvest::sync_tests::checkpoints::durable_api_preview_reclaimed_worker_cannot_checkpoint_its_next_page ... ok518test importers::harvest::sync_tests::checkpoints::durable_api_reclaimed_worker_cannot_commit_its_next_page ... ok519test importers::harvest::sync_tests::checkpoints::durable_api_resume_remembers_an_earlier_missing_timestamp ... ok520test importers::harvest::sync_tests::parent_only_dry_run_previews_without_persisting_catalog ... ok521test importers::harvest::sync_tests::paging::later_download_failure_rolls_back_parents_rows_and_watermark ... ok522test importers::harvest::sync_tests::checkpoints::durable_api_preview_resumes_catalog_download ... ok523test importers::harvest::sync_tests::parent_only_api_import_creates_catalog_and_reimport_skips_it ... ok524test importers::harvest::sync_tests::watermark_never_passes_the_start_of_capture ... ok525test importers::harvest::sync_tests::successful_sync_only_marks_the_incrementally_fetched_entity ... ok526test importers::harvest::sync_tests::checkpoints::failed_api_commit_publishes_its_last_confirmed_page_report ... ok527test importers::harvest::sync_tests::watermark_write_failure_rolls_back_imported_data ... ok528test init::tests::init_refuses_when_an_organization_exists ... ok529test importers::harvest::sync_tests::refreshed_tokens_survive_a_dry_run_rollback_in_the_same_import_session ... ok530test importers::harvest::sync_tests::checkpoints::failed_api_preview_publishes_its_last_confirmed_page_report ... ok531test importers::harvest::sync_tests::parent_catalog_preserves_metadata_and_counts_each_entity_once ... ok532test init::tests::init_creates_one_org_and_one_admin_and_nothing_else ... ok533test importers::harvest::sync_tests::checkpoints::durable_api_preview_preserves_adoptions_and_repeated_ids_across_recovery ... ok534test importers::harvest::sync_tests::checkpoints::durable_api_preview_resume_preserves_row_errors ... ok535test importers::harvest::sync_tests::checkpoints::durable_api_resumes_committed_pages_and_preserves_the_high_watermark ... ok536test importers::harvest::sync_tests::checkpoints::durable_api_preview_resumes_pages_without_publishing_domain_data ... ok537test harvest::pagination_tests::harvest_pagination_router_preserves_session_and_tenant_guards ... ok538test importers::harvest::sync_tests::checkpoints::durable_api_resume_keeps_earlier_errors_and_does_not_advance_watermark ... ok539test jobs::tests::cancellation_and_retry_are_scoped_and_idempotent ... ok540test importers::harvest::sync_tests::checkpoints::durable_api_resumes_a_partially_downloaded_catalog ... ok541test jobs::tests::claims_are_atomic_and_expired_leases_recover ... ok542test jobs::tests::history_paginates_tied_timestamps_and_rejects_foreign_cursors ... ok543test jobs::tests::payload_kind_is_stable_and_round_trips ... ok544test jobs::tests::payload_versions_preserve_legacy_jobs_and_reject_unknown_versions ... ok545test jobs::tests::outbox_delivery_is_idempotent ... ok546test jobs::tests::retry_snapshot_does_not_guess_unknown_payloads_or_sources ... ok547test importers::harvest::sync_tests::paging::invalid_and_missing_timestamp_rows_cross_page_boundaries_without_advancing ... ok548test jobs::tests::shutdown_deadline_drops_and_joins_in_flight_work ... ok549test jobs::tests::shutdown_waits_for_in_flight_work ... ok550test importers::harvest::sync_tests::checkpoints::durable_api_preview_resumes_after_a_confirmed_parent_batch ... ok551test importers::harvest::sync_tests::checkpoints::durable_api_resumes_after_a_confirmed_parent_batch ... ok552test jobs::tests::retry_snapshot_matches_status_and_list_without_exposing_payload ... ok553test importers::harvest::sync_tests::paging::durable_api_cancel_waits_for_the_producer_before_acknowledging ... ok554test jobs::tests::synthetic_job_uses_the_same_registered_envelope ... ok555test jobs::tests::upload_organization_must_match_its_job ... ok556test models::project_creation::tests::draft_roundtrip_preserves_incomplete_input_without_demo_data ... ok557test models::project_creation::tests::unauthorized_catalog_cost_is_absent_from_serialized_options ... ok558test models::project_creation::tests::unknown_draft_fields_are_rejected ... ok559test jobs::outbox::tests::plugin_failure_retries_with_the_same_event_identity ... ok560test notifications::tests::cancelling_delivery_kills_the_active_sender ... ok561test notifications::tests::acknowledged_email_is_never_claimed_again ... ok562test importers::harvest::engine_tests::csv_streaming::csv_measurement_recovers_a_complete_batch_without_recounting ... ok563test jobs::tests::stopped_worker_leaves_queued_jobs_unclaimed ... ok564test notifications::tests::mail_configuration_is_disabled_by_default_and_rejects_partial_values ... ok565test notifications::tests::mail_configuration_requires_an_executable_file_and_safe_sender ... ok566test notifications::tests::disabled_mail_worker_does_not_claim_pending_notifications ... ok567test notifications::tests::recipient_injection_is_rejected_before_starting_a_process ... ok568test notifications::tests::rendered_mail_bounds_body_lines_for_long_unicode_and_control_names ... ok569test notifications::tests::failed_email_retries_same_identity_and_eventually_stops ... ok570test notifications::tests::foreign_notification_payload_is_terminal_and_never_sent ... ok571test notifications::tests::sendmail_failure_does_not_expose_program_output ... ok572test notifications::tests::sendmail_receives_fixed_arguments_and_stable_message_identity ... ok573test jobs::tests::outbox_rollback_does_not_publish_an_event ... ok574test notifications::tests::mail_worker_delivers_only_its_kind_and_drains_cleanly ... ok575test notifications::tests::retry_can_recover_without_changing_message_identity ... ok576test pages::clients::filters::tests::clearing_query_preserves_selected_currency_and_lifecycle ... ok577test pages::clients::filters::tests::lifecycle_counts_share_query_and_currency_filters ... ok578test pages::clients::filters::tests::name_search_ignores_case_and_surrounding_whitespace ... ok579test pages::clients::filters::tests::preferred_or_visible_project_currency_matches_but_query_still_applies ... ok580test pages::clients::form::tests::absent_billing_authority_never_produces_an_edit_payload ... ok581test pages::clients::form::tests::ambiguous_creation_errors_require_explicit_recovery ... ok582test pages::clients::form::tests::clearing_a_rate_is_explicit_and_needs_no_currency_confirmation ... ok583test pages::clients::form::tests::invalid_fields_are_not_rewritten_by_validation ... ok584test pages::clients::form::tests::rate_replacement_requires_confirmation_in_the_current_currency ... ok585test pages::clients::form::tests::untouched_fields_keep_zero_rate_and_original_snapshot ... ok586test pages::importers::presentation::tests::interrupted_report_is_partial_regardless_of_retry_prerequisites ... ok587test pages::importers::presentation::tests::no_selection_does_not_claim_no_import_history ... ok588test pages::importers::presentation::tests::source_labels_do_not_guess_unknown_importers ... ok589test pages::importers::presentation::tests::states_and_phases_have_readable_unknown_fallbacks ... ok590test pages::importers::presentation::tests::summaries_distinguish_zero_skipped_and_mixed_outcomes ... ok591test pages::invoices::defaults_form::tests::invoice_fields_bound_metadata_by_characters_and_reject_nul ... ok592test pages::invoices::defaults_form::tests::invoice_fields_preserve_exact_percentages_and_custom_terms ... ok593test pages::invoices::defaults_form::tests::invoice_fields_preserve_receipt_terms_and_empty_optional_percentages ... ok594test pages::invoices::defaults_form::tests::invoice_fields_reject_invalid_percentages_terms_and_second_tax ... ok595test pages::invoices::preparation::fees::tests::fee_inputs_require_exact_amounts_and_an_explicit_positive_charge ... ok596test pages::invoices::preparation::fees::tests::refresh_keeps_raw_edits_and_does_not_select_new_sources ... ok597test pages::invoices::preparation::fees::tests::refresh_preserves_missing_or_relabelled_edits_until_explicit_removal ... ok598test pages::invoices::preparation::tests::invoice_context_selects_only_the_exact_available_client ... ok599test pages::invoices::preparation::tests::invoice_review_requires_matching_sources_and_valid_values ... ok600test pages::invoices::preparation::tests::unavailable_or_malformed_invoice_context_never_uses_the_first_client ... ok601test pages::new_project::basics::tests::a_batch_that_would_exceed_the_tag_limit_is_rejected ... ok602test pages::new_project::basics::tests::a_full_tag_list_still_accepts_a_duplicate ... ok603test pages::new_project::basics::tests::overlong_tags_are_rejected_without_truncation ... ok604test pages::new_project::basics::tests::tag_length_counts_characters_instead_of_bytes ... ok605test pages::new_project::basics::tests::tags_trim_and_deduplicate_without_changing_existing_spelling ... ok606test pages::new_project::billing::tests::budget_errors_target_a_control_that_can_be_corrected ... ok607test pages::new_project::draft::tests::a_mismatched_acknowledgement_does_not_lose_pending_input ... ok608test pages::new_project::draft::tests::a_retry_keeps_the_unacknowledged_payload_and_revision ... ok609test pages::new_project::draft::tests::a_validation_rejection_allows_corrected_input_at_the_same_revision ... ok610test pages::new_project::draft::tests::an_empty_form_is_not_reported_as_saved ... ok611test pages::new_project::draft::tests::any_saved_draft_wins_over_context_including_empty_or_matching_client ... ok612test pages::new_project::draft::tests::context_prefills_only_a_new_form_without_fixing_its_currency ... ok613test pages::new_project::draft::tests::resuming_preserves_the_server_identity_and_incomplete_fields ... ok614test pages::new_project::team::tests::adding_everyone_deduplicates_without_replacing_project_overrides ... ok615test pages::new_project::team::tests::exceeding_the_team_limit_does_not_partially_add_people ... ok616test pages::new_project::team::tests::removing_a_member_keeps_an_empty_restricted_task_restricted ... ok617test pages::new_project::tests::a_rejected_creation_can_be_edited_but_an_uncertain_commit_must_be_retried ... ok618test pages::new_project::tests::only_known_validation_fields_can_target_a_control ... ok619test pages::projects::budget_display_tests::configured_scopes_sum_without_hiding_an_individual_overrun ... ok620test pages::projects::budget_display_tests::display_preserves_units_sign_and_large_integer_values ... ok621test pages::projects::budget_display_tests::tag_filter_matches_identity_without_duplicates_or_name_collisions ... ok622test pages::projects::budget_display_tests::unallocated_zero_and_overflow_budgets_are_not_conflated ... ok623test pages::reports::tests::cost_total_uses_organization_currency_across_billing_currencies ... ok624test pages::reports::tests::mixed_currencies_are_not_added_even_when_the_numbers_would_overflow ... ok625test pages::reports::tests::monetary_total_overflow_is_visible_instead_of_panicking ... ok626test pages::reports::tests::redacted_costs_do_not_become_zero_or_partial_totals ... ok627test pages::reports::tests::single_currency_totals_are_formatted_and_empty_reports_have_no_amount ... ok628test pages::timesheet::tests::cal_span_day_shows_only_the_anchor_column ... ok629test pages::timesheet::tests::cal_span_defaults_to_week ... ok630test pages::timesheet::tests::cal_span_unknown_falls_back_to_week ... ok631test pages::timesheet::tests::cal_span_url_roundtrips ... ok632test pages::timesheet::tests::cal_span_week_shows_all_seven_days ... ok633test pages::timesheet::tests::cal_span_work_week_preserves_date_order_across_weekends ... ok634test pages::timesheet::tests::cal_span_work_week_shows_monday_to_friday ... ok635test pages::timesheet::tests::cal_span_work_week_skips_sunday_when_it_is_the_first_column ... ok636test pages::timesheet::tests::day_col_class_marks_today ... ok637test pages::timesheet::tests::day_col_class_marks_weekend ... ok638test pages::timesheet::tests::day_col_class_plain_weekday ... ok639test pages::timesheet::tests::day_col_class_today_wins_over_weekend ... ok640test pages::timesheet::tests::invalid_duration_cannot_start_a_timer_save_or_clear_a_cell ... ok641test pages::timesheet::tests::only_a_blank_duration_can_start_an_eligible_timer ... ok642test pages::timesheet::tests::timed_lanes_still_widens_overlapping_entries ... ok643test pages::timesheet::tests::timed_lanes_terminates_on_a_zero_length_entry ... ok644test pages::timesheet::tests::today_offset_is_none_after_the_week ... ok645test pages::timesheet::tests::today_offset_is_none_before_the_week ... ok646test pages::timesheet::tests::today_offset_is_six_on_the_sunday ... ok647test pages::timesheet::tests::today_offset_is_zero_on_the_monday ... ok648test pages::timesheet::tests::value_cell_class_empty_wins_over_today ... ok649test pages::timesheet::tests::value_cell_class_marks_today_when_nonzero ... ok650test pages::timesheet::tests::weekend_style_follows_the_date_not_the_column_offset ... ok651test pages::timesheet::tests::weekly_duration_edit_preserves_nine_am_start_notes_and_billability ... ok652test pages::timesheet::tests::weekly_new_entries_are_untimed_and_explicit_clears_still_work ... ok653test notifications::tests::verbose_sender_output_is_discarded_without_blocking_delivery ... ok654test notifications::tests::revoked_recipient_does_not_receive_a_pending_email ... ok655test importers::harvest::sync_tests::scale::http_pages_preview_commit_and_reimport ... ok656test notifications::tests::stale_email_lease_cannot_start_delivery ... ok657test plugin::database::tests::application_database_owner_is_not_a_plugin_identity ... ok658test plugin::database::tests::dedicated_reader_is_accepted_but_new_write_grants_are_rejected ... ok659test plugin::database::tests::reader_accepts_optional_first_party_rounding_helper ... ok660test importers::harvest::sync_tests::scale::durable_measurement_finishes_from_its_eof_checkpoint ... ok661test plugin::event::tests::active_transition_fires_only_on_a_real_flip ... ok662test plugin::event::tests::budget_and_timer_events_serialize ... ok663test plugin::event::tests::new_events_have_stable_hook_names ... ok664test plugin::event::tests::project_membership_payload_excludes_private_configuration ... ok665test plugin::event::tests::role_change_event_carries_previous_role ... ok666test plugin::event::tests::submission_event_serializes_payload ... ok667test plugin::event::tests::us2_events_have_stable_hook_names ... ok668test plugin::database::tests::project_configuration_is_private_even_when_plugin_grants_are_misconfigured ... ok669test plugin::host::tests::config_lookup::a_set_key_is_returned ... ok670test plugin::host::tests::config_lookup::an_unset_key_is_none ... ok671test jobs::report::tests::legacy_upgrade_preserves_job_states_and_existing_archives ... ok672test importers::harvest::engine_tests::csv_streaming::durable_csv_preview_matches_existing_and_new_rows_with_one_connection ... ok673test plugin::database::tests::reader_cannot_have_access_to_credentials ... ok674test plugin::database::tests::reader_cannot_execute_security_definer_functions ... ok675test plugin::host::tests::database_tests::unconfigured_sql_never_falls_back_to_application_state ... ok676test notifications::tests::sendmail_timeout_kills_and_reaps_the_child ... ok677test plugin::host::tests::response_shaping::error_json_wraps_the_message ... ok678test plugin::host::tests::response_shaping::http_body_accepts_the_size_limit_and_rejects_larger_responses ... ok679test plugin::host::tests::response_shaping::http_response_carries_status_and_body ... ok680test plugin::host::tests::response_shaping::invalid_http_utf8_is_an_error_not_an_empty_success ... ok681test plugin::host::tests::statement_is_read_only::a_cte_select_is_allowed ... ok682test plugin::host::tests::statement_is_read_only::a_second_statement_is_rejected ... ok683test plugin::host::tests::statement_is_read_only::a_single_trailing_semicolon_is_allowed ... ok684test plugin::host::tests::statement_is_read_only::a_write_hidden_behind_a_comment_is_rejected ... ok685test plugin::host::tests::statement_is_read_only::plain_select_is_allowed ... ok686test plugin::host::tests::statement_is_read_only::writes_are_rejected ... ok687test plugin::host::tests::wrap_select::strips_a_trailing_semicolon_before_wrapping ... ok688test plugin::host::tests::wrap_select::wraps_as_a_bounded_row_query ... ok689test plugin::manifest::tests::accepts_all_published_business_events ... ok690test plugin::manifest::tests::config_defaults_to_empty_when_absent ... ok691test plugin::manifest::tests::parse_valid_manifest ... ok692test plugin::manifest::tests::parses_optional_config_table ... ok693test plugin::manifest::tests::reject_empty_hooks ... ok694test plugin::manifest::tests::reject_unknown_hook ... ok695test plugin::database::tests::reader_cannot_switch_into_another_role ... ok696test plugin::host::tests::database_queries_preserve_parameters_and_rollback_session_settings ... ok697test plugin::database::tests::reader_rejects_unapproved_invoker_functions ... ok698test jobs::tests::outbox_stale_claims_cannot_acknowledge_or_reschedule_delivery ... ok699test plugin::host::tests::database_tests::query_discards_session_advisory_locks ... ok700test plugin::host::tests::database_tests::select_cannot_write_or_gain_application_privileges ... ok701702running 1 test703test jobs::tests::submission_key_cannot_change_api_mode_or_scope ... ok704test plugin::host::tests::database_tests::query_results_are_bounded_without_silent_truncation ... ok705test plugin::registry::tests::initialization::guest_initializers_have_an_engine_instruction_budget ... ok706707test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 838 filtered out; finished in 0.36s708709710running 1 test711test jobs::tests::outbox_same_kind_consumers_cannot_claim_the_same_lease ... ok712test plugin::registry::tests::initialization::instruction_budget_is_replenished_for_each_call ... ok713test plugin::registry::tests::isolation::confirmed_dispatch_returns_overload_for_retry ... ok714test plugin::registry::tests::isolation::cancelling_a_waiter_keeps_capacity_reserved_until_the_host_call_exits ... ok715test plugin::registry::tests::isolation::confirmed_dispatch_waits_for_the_plugin_to_finish ... ok716test plugin::registry::tests::isolation::confirmed_dispatch_attempts_other_plugins_after_one_fails ... ok717test plugin::registry::tests::isolation::confirmed_dispatch_returns_plugin_failure_for_retry ... ok718test plugin::registry::tests::isolation::events_execute_outside_the_async_worker ... ok719test plugin::registry::tests::isolation::different_plugins_share_the_running_call_limit ... ok720test plugin::registry::tests::initialization::guest_initializers_have_an_engine_instruction_budget ... ok721722test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 838 filtered out; finished in 0.32s723724test plugin::registry::tests::isolation::loaded_plugins_cannot_start_with_excessive_memory ... ok725test plugin::registry::tests::isolation::loaded_plugins_cannot_grow_memory_past_the_limit ... ok726test plugin::registry::tests::isolation::oversized_event_payloads_are_not_queued ... ok727test plugin::registry::tests::isolation::pending_capacity_rejects_new_work_without_spawning_tasks ... ok728test plugin::registry::tests::load_empty_directory ... ok729test plugin::registry::tests::load_nonexistent_directory ... ok730731running 1 test732test plugin::registry::tests::isolation::widgets_execute_outside_the_async_worker ... ok733test plugin::registry::tests::isolation::oversized_wasm_output_is_rejected_before_copying_it ... ok734test reports::bounded::tests::cancelled_export_keeps_its_slot_until_the_renderer_exits ... ok735test reports::bounded::tests::export_admission_stays_reserved_until_the_body_is_dropped ... ok736test reports::bounded::tests::export_rendering_runs_off_the_async_worker ... ok737test reports::bounded::tests::output_budget_checks_writes_and_seeks_without_truncation ... ok738test reports::bounded::tests::rendered_output_limit_rejects_oversized_files_and_releases_admission ... ok739test reports::bounded::tests::renderer_errors_and_panics_release_admission ... ok740test jobs::tests::reclaimed_attempt_rejects_stale_results_even_with_the_same_worker_name ... ok741test plugin::registry::tests::initialization::guest_initializers_have_an_engine_instruction_budget ... ok742743test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 838 filtered out; finished in 0.30s744745test render::tests::invoice_template_formats_large_minor_units_exactly ... ok746test plugin::host::tests::database_tests::wasm_host_uses_the_restricted_connection_on_a_current_thread_runtime ... ok747748running 1 test749test plugin::registry::tests::initialization::guest_initializers_have_an_engine_instruction_budget ... ok750751test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 838 filtered out; finished in 0.30s752753test jobs::tests::synthetic_job_executes_through_claim_and_completion ... ok754test plugin::registry::tests::initialization::guest_initializers_have_an_engine_instruction_budget ... ok755test reports::bounded::tests::timed_out_export_keeps_its_slot_until_the_renderer_exits ... ok756test harvest::tests::imported_legacy_rates_survive_retry_in_harvest_list_and_detail ... ok757test plugin::registry::tests::collect_widgets_from_echo_plugin ... ok758test plugin::registry::tests::dispatch_event_with_no_subscribers ... ok759test plugin::registry::tests::load_test_plugins ... ok760test reports::limits::tests::measure_bounded_export_limits ... ignored, manual release export measurement; set HORAE_EXPORT_PROBE_DIR for artifacts761test jobs::tests::invalid_policy_cannot_enqueue_a_job_or_upload ... ok762test jobs::outbox::tests::worker_delivers_available_events_and_stops_cleanly ... ok763test reports::limits::tests::bounded_projects_filter_archives_before_size_checks ... ok764test harvest::pagination_tests::harvest_own_time_omits_private_project_budget_metadata ... ok765test jobs::tests::api_job_keeps_its_policy_across_duplicate_enqueue_and_manual_retry ... ok766test reports::streaming::database_tests::measure_streaming_csv_export ... ignored, Manual release measurement of a 100,000-row CSV download767test plugin::registry::tests::dispatch_to_echo_plugin_succeeds ... ok768test plugin::registry::tests::dispatch_invoice_sent_to_echo_plugin ... ok769test plugin::registry::tests::failing_plugin_does_not_block_caller ... ok770test plugin::host::tests::a_query_cannot_disable_its_own_deadline ... ok771test jobs::tests::failed_csv_preview_retains_confirmed_report_through_history_and_retry ... ok772test importers::harvest::sync_tests::scale::durable_api_report_preserves_overflow_errors_after_recovery ... ok773test reports::streaming::database_tests::dropping_streamed_timesheet_closes_its_database_connection ... ok774test reports::streaming::tests::completed_csv_keeps_admission_until_body_drop ... ok775test reports::streaming::tests::csv_backpressure_and_body_drop_bound_and_cancel_source_reads ... ok776test reports::streaming::tests::csv_does_not_truncate_a_quoted_unicode_record_larger_than_a_chunk ... ok777test reports::streaming::tests::csv_emits_a_chunk_before_the_source_finishes ... ok778test reports::streaming::tests::csv_failure_or_panic_after_a_chunk_is_not_successful_eof ... ok779test reports::streaming::tests::csv_startup_errors_are_http_errors_and_release_admission ... ok780test harvest::pagination_tests::harvest_pagination_rejects_invalid_windows_on_every_collection ... ok781test reports::streaming::tests::dropping_csv_during_startup_cancels_the_producer ... ok782test route::tests::client_detail_preserves_identity_and_highlights_only_clients ... ok783test route::tests::client_workflow_paths_preserve_context_and_navigation_section ... ok784test route::tests::edit_project_preserves_identity_and_highlights_only_projects ... ok785test route::tests::malformed_context_reaches_the_workflow_for_validation_after_recovery ... ok786test route::tests::new_project_is_static_and_highlights_only_projects ... ok787test plugin::registry::tests::isolation::a_wasm_timeout_releases_the_worker_and_instance ... ok788test jobs::tests::cancellation_survives_a_crash_before_the_worker_acknowledges ... ok789test seed::tests::concurrent_seed_runs_create_only_one_demo ... ok790test reports::streaming::tests::csv_timeout_interrupts_an_already_started_body ... ok791test harvest::pagination_tests::harvest_pagination_time_entries_keep_the_filtered_set_and_date_ties ... ok792test reports::limits::tests::export_size_checks_and_reads_share_a_repeatable_read_snapshot ... ok793test jobs::report::stream_tests::download_reports_missing_fragments_after_its_buffered_page ... ok794test reports::limits::tests::fee_exports_preserve_absent_quantities_and_render_a_real_pdf ... ok795test seed::tests::concurrent_initializers_cannot_create_two_organizations ... ok796test server_fns::approvals::submission_tests::cancelling_a_submission_releases_its_write_barrier ... ok797test jobs::tests::final_failure_is_retained_and_manual_retry_gets_a_new_budget ... ok798test server_fns::approvals::submission_tests::submission_accepts_the_organizations_sunday_start ... ok799test server_fns::approvals::submission_tests::submission_barrier_allows_shared_writers_for_the_same_user ... ok800test jobs::tests::missing_csv_upload_records_error_and_requeues ... ok801test server_fns::approvals::submission_tests::submission_freezes_the_minutes_after_a_competing_edit ... ok802test server_fns::approvals::submission_tests::submission_does_not_wait_for_another_users_writer ... ok803test server_fns::approvals::submission_tests::submission_rejects_a_start_that_is_not_the_organizations_week_start ... ok804test server_fns::approvals::submission_tests::submission_uses_one_pool_connection ... ok805test server_fns::approvals::submission_tests::submission_waits_for_a_new_timer_before_checking_the_week ... ok806test server_fns::approvals::tests::ignores_stopped_and_out_of_week_timers ... ok807test server_fns::approvals::tests::sees_a_running_timer_inside_the_week ... ok808test jobs::report::stream_tests::download_reads_only_when_consumed_and_releases_its_connection ... ok809test server_fns::budget_tests::budget_notification_schema_enforces_tenants_and_no_public_access ... ok810test server_fns::budget_tests::concurrent_budget_checks_have_one_band_claimant ... ok811test server_fns::budget_tests::configured_alert_and_outbox_roll_back_together ... ok812test server_fns::budget_tests::configured_alert_recipients_are_active_same_org_managers_and_project_leads ... ok813test seed::tests::seed_leaves_an_older_or_partial_demo_unchanged ... ok814test server_fns::budget_tests::configured_alerts_deduplicate_concurrent_checks_and_recrossing ... ok815test server_fns::budget_tests::configured_alerts_require_enabled_active_project_and_authorized_recipient ... ok816test server_fns::budget_tests::configured_amount_budget_uses_resolved_rates_and_explicit_zero ... ok817test server_fns::budget_tests::configured_budget_does_not_read_foreign_or_legacy_projects ... ok818test server_fns::budget_tests::configured_budget_sweep_recovers_missed_checks_without_duplicates ... ok819test seed::tests::late_seed_failure_rolls_back_all_demo_data ... ok820test server_fns::budget_tests::configured_monthly_budget_excludes_other_months_and_nonbillable_time ... ok821test server_fns::budget_tests::configured_monthly_budget_includes_leap_day_and_preserves_locked_rounding ... ok822test server_fns::budget_tests::configured_nonbillable_projects_count_time_without_hidden_checkbox ... ok823test server_fns::budget_tests::configured_person_budget_excludes_other_people_and_has_its_own_alert ... ok824test server_fns::budget_tests::configured_task_and_person_budgets_do_not_share_consumption ... ok825test server_fns::budget_tests::configured_task_fee_budget_respects_billability_and_alert_scope ... ok826test server_fns::budget_tests::overview_budget_progress_includes_people_without_an_allowance ... ok827test jobs::tests::cancellation_waits_for_the_claimed_execution_before_allowing_retry ... ok828test server_fns::clients::tests::both_activation_transitions_change_once_and_preserve_details ... ok829test server_fns::budget_tests::overview_budget_progress_batches_projects_without_mixing_scopes ... ok830test server_fns::budget_tests::overview_budget_progress_is_current_period_scoped_and_authorized ... ok831test server_fns::clients::tests::client_default_rate_allows_detail_edits_and_equivalent_currency ... ok832test server_fns::clients::tests::client_default_rate_prevents_currency_relabelling ... ok833test server_fns::clients::tests::client_details_keep_catalog_identity_but_omit_member_billing ... ok834test server_fns::clients::tests::client_details_distinguish_unset_zero_and_positive_manager_rates ... ok835test server_fns::clients::tests::client_details_hide_foreign_missing_and_inactive_actor_records ... ok836test server_fns::clients::tests::client_invoices_require_manager_authority_even_without_invoices ... ok837test reports::privacy_tests::project_downloads_follow_progress_visibility ... ok838test server_fns::clients::tests::client_invoices_reject_a_winning_concurrent_revocation ... ok839test server_fns::clients::tests::client_invoices_keep_exact_client_scope_statuses_and_currencies ... ok840test server_fns::clients::tests::client_invoices_hold_authority_until_the_read_finishes ... ok841test server_fns::clients::tests::client_summaries_follow_existing_progress_visibility_and_revoke_inactive_users ... ok842test server_fns::clients::tests::client_summaries_exclude_foreign_clients_and_unreadable_project_currencies ... ok843test server_fns::clients::tests::client_summaries_keep_catalog_without_projects_and_count_archived_projects ... ok844test server_fns::clients::tests::client_summaries_reject_a_foreign_actor_even_when_client_org_is_known ... ok845test server_fns::clients::tests::currency_edit_rechecks_a_concurrently_added_client_default_rate ... ok846test server_fns::clients::tests::missing_and_foreign_clients_are_not_noops ... ok847test jobs::tests::invalid_stored_payloads_reach_a_terminal_error ... ok848test server_fns::clients::tests::each_field_changes_once_and_preserves_inactive_status ... ok849test server_fns::clients::tests::concurrent_deletion_is_not_an_unchanged_mutation ... ok850test server_fns::clients::tests::profile_create_persists_normalized_identity_and_exact_optional_rate ... ok851test server_fns::clients::tests::profile_currency_change_without_a_rate_keeps_it_unset ... ok852test server_fns::clients::tests::profile_noop_preserves_row_and_returns_no_update_event_signal ... ok853test server_fns::clients::tests::profile_saves_recheck_manager_org_and_active_actor ... ok854test server_fns::clients::tests::profile_saves_reject_invalid_input_without_partial_writes ... ok855test server_fns::clients::tests::profile_update_rechecks_authority_after_waiting_for_a_concurrent_demotion ... ok856test server_fns::clients::tests::profile_update_rejects_stale_currency_even_when_the_rate_is_still_unset ... ok857test server_fns::clients::tests::profile_update_preserves_historical_rows_and_inactive_status ... ok858test server_fns::importers::authorization_tests::cli_job_endpoints_have_stable_registered_paths ... ok859test reports::privacy_tests::unauthorized_project_text_does_not_affect_export_size_limits ... ok860test server_fns::importers::authorization_tests::report_stress::large_report_streams_over_http_without_buffering_the_archive ... ignored, isolated Linux HTTP/memory stress; run with --release --exact --ignored --nocapture861test server_fns::clients::tests::profile_update_rejects_stale_rate_even_when_the_target_currency_is_unchanged ... ok862test server_fns::importers::authorization_tests::request_bound_import_endpoints_are_not_registered ... ok863test server_fns::importers::csv_upload::tests::csv_upload_extractor_preserves_raw_bytes ... ok864test server_fns::importers::csv_upload::tests::csv_upload_requires_its_header_without_reading_the_body ... ok865test server_fns::importers::tests::concurrent_api_import_returns_a_retryable_conflict ... ok866test server_fns::importers::tests::submission_identity_rejects_expired_future_and_non_v7_keys ... ok867test server_fns::clients::tests::profile_update_rechecks_financial_snapshot_after_waiting_for_a_concurrent_edit ... ok868test server_fns::importers::tests::csv_route_rejects_invalid_modes_and_headers_without_reading_uploads ... ok869test server_fns::clients::tests::profile_update_requires_explicit_rate_intent_for_currency_changes ... ok870test server_fns::clients::tests::restoring_a_competing_deactivation_reports_reactivation ... ok871test server_fns::clients::tests::repeating_a_competing_deactivation_does_not_report_a_transition ... ok872test server_fns::clients::tests::repeating_a_competing_edit_does_not_report_a_change ... ok873test server_fns::clients::tests::restoring_values_after_a_competing_edit_reports_a_change ... ok874test server_fns::clients::tests::unchanged_edit_preserves_the_row ... ok875test server_fns::clients::tests::unchanged_activation_preserves_the_row ... ok876test reports::limits::tests::bounded_entries_reject_large_fields_and_combined_text ... ok877test server_fns::invoices::fee_tests::concurrent_invoices_claim_a_single_fee_once ... ok878test server_fns::invoices::fee_tests::fee_invoice_does_not_claim_hours_or_another_clients_fee ... ok879test server_fns::invoices::fee_tests::fee_occurrence_rejects_cross_organization_project ... ok880test server_fns::invoices::fee_tests::fee_total_overflow_rolls_back_occurrences_and_invoice ... ok881test reports::limits::tests::bounded_invoice_limits_include_branding_and_preserve_tenant_scope ... ok882test server_fns::invoices::fee_tests::invoice_line_sources_reject_mixed_sources_and_invented_fee_quantities ... ok883test server_fns::invoices::fee_tests::invoice_preview_does_not_materialize_fees_and_preserves_released_snapshots ... ok884test server_fns::invoices::fee_tests::milestones_include_unbilled_overdue_fees_but_not_future_fees ... ok885test reports::streaming::database_tests::streamed_timesheet_exceeds_xlsx_row_limit_without_one_large_body_chunk ... ok886test server_fns::invoices::fee_tests::monthly_fees_use_calendar_dates_and_skip_already_claimed_months ... ok887test server_fns::invoices::fee_tests::draft_fee_edit_serializes_retries_and_rejects_stale_revisions ... ok888test server_fns::invoices::fee_tests::monthly_first_and_fifteenth_respect_partial_period_and_project_end ... ok889test jobs::tests::concurrent_csv_resubmission_preserves_identity_after_upload_cleanup ... ok890test reports::streaming::database_tests::streamed_invoice_uses_stored_exact_cents_and_tenant_scoped_metadata ... ok891test server_fns::invoices::fee_tests::fee_balance_migration_allocates_discount_without_rewriting_invoice_snapshots ... ok892test server_fns::invoices::fee_tests::prepared_fee_selection_rejects_invalid_values_and_empty_generation ... ok893test server_fns::invoices::fee_tests::draft_fee_edit_rejects_invalid_lines_and_current_unauthorized_actors ... ok894test seed::tests::concurrent_init_and_seed_cannot_mix_organizations ... ok895test jobs::tests::submission_key_cannot_change_csv_bytes_or_mode ... ok896test reports::streaming::database_tests::streamed_timesheet_preserves_csv_escaping_frozen_zero_and_all_filters ... ok897test server_fns::invoices::fee_tests::single_fee_can_be_invoiced_without_time ... ok898test harvest::pagination_tests::harvest_task_access_filters_counts_and_preserves_rate_free_history ... ok899test server_fns::invoices::fee_tests::void_releases_fee_identity_without_rewriting_the_original_line ... ok900test server_fns::invoices::preview::tests::excess_rejects_an_unrepresentable_total_even_when_the_remainder_fits ... ok901test server_fns::invoices::preview::tests::unselected_fee_currencies_do_not_relabel_or_block_selected_charges ... ok902test server_fns::invoices::fee_tests::mixed_time_and_fee_discount_conserves_cents_without_reopening_time ... ok903test server_fns::invoices::fee_tests::removing_discount_and_billing_the_remainder_cannot_both_succeed ... ok904test server_fns::invoices::tests::configured_fixed_fee_hours_are_not_invoiced_but_legacy_fees_are_unchanged ... ok905test server_fns::invoices::tests::billing_cascade_agrees_across_all_four_levels_including_zero ... ok906test server_fns::invoices::tests::effective_minutes_migration_preserves_historical_invoice_quantities ... ok907test server_fns::invoices::tests::configured_project_currency_and_cost_override_keep_their_denominations ... ok908test server_fns::invoices::fee_tests::reviewed_generation_bills_partial_fees_and_rejects_stale_balances ... ok909test server_fns::invoices::fee_tests::draft_fee_edit_requires_current_balance_and_exact_excess_confirmation ... ok910test server_fns::invoices::tests::effective_minutes_sql_matches_domain_rounding ... ok911test server_fns::invoices::fee_tests::invoice_defaults_apply_to_selected_fees_without_claiming_other_projects ... ok912test reports::streaming::database_tests::a_real_database_error_interrupts_the_csv_body ... ok913test server_fns::invoices::fee_tests::fee_preview_discount_ties_follow_source_keys_not_display_dates ... ok914test server_fns::invoices::fee_tests::project_fee_context_matches_invoice_balances_and_current_authority ... ok915test jobs::tests::cleanup_retains_retryable_uploads_and_deletes_expired_jobs ... ok916test server_fns::invoices::tests::invoice_defaults_validate_all_override_fields ... ok917test server_fns::invoices::tests::invoice_line_overflow_leaves_time_unbilled ... ok918test server_fns::invoices::tests::imported_rates::imported_legacy_project_keeps_exact_rates_and_totals_on_retry ... ok919test server_fns::invoices::tests::imported_rates::imported_task_rates_require_matching_currency_only_for_new_configured_links ... ok920test reports::streaming::database_tests::streamed_projects_preserve_scope_budget_and_tenant_isolation ... ok921test jobs::tests::failed_csv_commit_retains_confirmed_report_through_history_and_retry ... ok922test server_fns::invoices::tests::invoice_total_overflow_leaves_all_time_unbilled ... ok923test server_fns::invoices::fee_tests::reviewed_generation_requires_exact_excess_and_current_authority ... ok924test server_fns::invoices::tests::invoice_transitions_reject_invalid_states_and_foreign_organizations ... ok925test seed::tests::repeated_seed_preserves_every_row_and_user_edits ... ok926test server_fns::invoices::tests::invoiced_amounts_survive_rate_changes_and_void_uses_current_rates ... ok927test server_fns::invoices::tests::invoicing_leaves_running_time_open ... ok928test server_fns::invoices::tests::invoiced_billability_survives_later_project_changes ... ok929test server_fns::invoices::tests::invoice_defaults_selection_rejects_unavailable_projects_before_claiming ... ok930test server_fns::invoices::tests::invoicing_uses_and_freezes_effective_minutes ... ok931test server_fns::invoices::tests::large_invoice_and_reports_agree_without_intermediate_overflow ... ok932test seed::tests::seed_refuses_a_second_organization_even_when_the_demo_exists ... ok933test server_fns::invoices::tests::mixed_project_currencies_cannot_partially_create_an_invoice ... ok934test server_fns::invoices::tests::non_billable_context_produces_no_unbilled_amount_on_any_report ... ok935test server_fns::invoices::tests::only_running_time_does_not_create_an_invoice ... ok936test server_fns::invoices::tests::project_rate_is_used_by_invoices_reports_and_spend ... ok937test reports::streaming::database_tests::streamed_fee_invoice_has_no_fabricated_hours_or_hourly_rate ... ok938test server_fns::invoices::tests::void_reopens_time_without_stale_rounding ... ok939test server_fns::invoices::tests::void_waits_for_a_concurrent_payment_and_then_refuses ... ok940test server_fns::organization::tests::each_branding_field_changes_once_including_null_and_empty ... ok941test server_fns::organization::tests::missing_organization_is_not_an_unchanged_update ... ok942test server_fns::organization::tests::restoring_branding_after_a_competing_edit_reports_a_change ... ok943test server_fns::organization::tests::repeating_a_competing_branding_edit_does_not_report_a_change ... ok944test server_fns::invoices::tests::selected_project_rate_modes_agree_across_billing_consumers ... ok945test harvest::pagination_tests::harvest_project_cost_overrides_require_admin_without_fabricated_fallback ... ok946test server_fns::organization::tests::unchanged_branding_preserves_the_row ... ok947test server_fns::project_creation::assignment_tests::finalization_reuses_catalog_and_keeps_lead_overrides_local_on_retry ... ok948test server_fns::project_creation::editing::tests::concurrent_edits_have_one_winner_and_association_writes_invalidate_open_forms ... ok949test server_fns::project_creation::editing::tests::editor_keeps_archived_selected_identities_and_nullable_overrides ... ok950test server_fns::project_creation::editing::tests::editor_loads_legacy_values_without_fabricating_a_billing_mode_or_draft ... ok951test server_fns::project_creation::editing::tests::editing_milestones_keeps_invoice_snapshots_and_fee_identities_immutable ... ok952test server_fns::invoices::fee_tests::project_fee_context_keeps_monthly_balances_separate ... ok953test server_fns::project_creation::editing::tests::editor_preserves_fee_schedule_and_operational_milestone_ids ... ok954test server_fns::project_creation::assignment_tests::invalid_assignment_graphs_leave_no_partial_creation_or_draft_change ... ok955test server_fns::project_creation::editing::tests::editor_recovers_full_configuration_and_redacts_private_values_after_role_change ... ok956test server_fns::project_creation::editing::tests::editor_rechecks_tenant_role_and_active_status ... ok957test server_fns::project_creation::editing::tests::save_edits_the_same_legacy_project_and_never_creates_a_draft_or_configuration ... ok958test server_fns::project_creation::editing::tests::foreign_actor_cannot_save_or_retry_another_organizations_edit ... ok959test server_fns::project_creation::editing::tests::editor_recovers_each_budget_scope_without_turning_absence_into_zero ... ok960test server_fns::project_creation::editing::tests::manager_edit_preserves_private_settings_and_cannot_remove_them_indirectly ... ok961test server_fns::invoices::fee_tests::fee_preview_keeps_source_identity_and_reports_discounted_draft_balances ... ok962test server_fns::project_creation::editing::tests::saves_recheck_current_authority_and_do_not_repeat_noops ... ok963test server_fns::project_creation::editing::tests::save_preserves_recorded_time_and_rejects_removing_its_task_or_person ... ok964test server_fns::project_creation::editing::tests::save_updates_configured_sections_atomically_and_rejects_stale_or_invalid_edits ... ok965test server_fns::project_creation::tests::client_dialog_validates_details_and_persists_an_explicit_zero_rate ... ok966test server_fns::project_creation::tests::billing_schema_rejects_partial_fee_schedules ... ok967test server_fns::project_creation::editing::tests::task_catalog_and_graph_changes_roll_back_together_on_duplicate_resolution ... ok968test server_fns::project_creation::tests::creation_options_are_scoped_bounded_and_redact_manager_costs ... ok969test server_fns::project_creation::tests::draft_schema_enforces_one_current_draft_per_creator ... ok970test server_fns::project_creation::tests::creation_client_must_be_active_and_in_the_same_organization ... ok971test server_fns::project_creation::tests::creation_actor_is_revalidated_inside_the_transaction ... ok972test server_fns::project_creation::tests::draft_validation_preserves_incomplete_input_but_bounds_its_size ... ok973test server_fns::project_creation::tests::final_validation_checks_invoice_defaults_and_scoped_budget_totals ... ok974test server_fns::project_creation::tests::final_validation_preserves_exact_budgets_and_rejects_unavailable_email ... ok975test server_fns::project_creation::tests::final_validation_requires_complete_fee_schedules_and_distinct_entities ... ok976test server_fns::project_creation::tests::final_validation_requires_real_details_and_ignores_hidden_type_settings ... ok977test server_fns::project_creation::tests::draft_ownership_discard_and_role_changes_are_enforced ... ok978test server_fns::project_creation::tests::draft_save_retries_do_not_overwrite_a_newer_revision ... ok979test reports::limits::tests::bounded_entries_enforce_the_row_limit_after_all_filters ... ok980test server_fns::project_creation::tests::draft_schema_rejects_foreign_creator_and_completed_project ... ok981test server_fns::project_creation::tests::managers_cannot_store_administrator_notes_or_costs_in_a_draft ... ok982test server_fns::project_creation::tests::finalization_persists_task_access_and_project_only_financial_overrides ... ok983test server_fns::project_creation::tests::draft_schema_rejects_oversize_payload_and_invalid_revision ... ok984test server_fns::project_creation::tests::existing_projects_have_no_implicit_new_billing_configuration ... ok985test server_fns::project_creation::tests::finalize_is_atomic_and_repeated_submission_returns_one_project ... ok986test server_fns::project_creation::tests::finalization_rechecks_client_role_revision_and_rate_currency ... ok987test server_fns::project_creation::validation::tests::assignment_rejections_identify_the_invalid_row ... ok988test server_fns::project_creation::validation::tests::basic_rejections_identify_the_field_without_echoing_input ... ok989test server_fns::project_creation::validation::tests::billing_rejections_identify_the_active_control ... ok990test server_fns::project_creation::validation::tests::inactive_billing_inputs_remain_in_the_draft_without_blocking_creation ... ok991test server_fns::project_creation::validation::tests::invoice_rejections_identify_the_field_without_echoing_input ... ok992test server_fns::project_creation::validation::tests::milestone_rejections_target_the_invalid_row_by_identity ... ok993test server_fns::project_creation::validation::tests::non_billable_projects_ignore_hidden_invoice_inputs ... ok994test server_fns::project_creation::validation::tests::task_name_and_access_rejections_identify_the_invalid_row ... ok995test server_fns::project_creation::tests::invalid_task_rolls_back_project_and_keeps_the_draft ... ok996test server_fns::project_creation::tests::missing_draft_responses_do_not_disclose_foreign_ownership ... ok997test server_fns::projects::bulk_tests::bulk_ids_validate_before_writes_and_normalize_duplicates ... ok998test server_fns::project_creation::tests::selected_catalog_bounds_requests_and_excludes_inactive_people ... ok999test server_fns::project_creation::tests::selected_client_lookup_is_scoped_and_keeps_archived_identity ... ok1000test server_fns::project_creation::tests::selected_catalog_is_scoped_deduplicated_and_redacts_manager_costs ... ok1001test server_fns::project_creation::tests::simultaneous_draft_updates_have_one_winner ... ok1002test server_fns::projects::bulk_tests::bulk_accepts_one_hundred_projects_and_mixed_status_noops ... ok1003test server_fns::projects::bulk_tests::bulk_missing_or_foreign_project_rolls_back_earlier_changes ... ok1004test server_fns::projects::bulk_tests::bulk_database_failure_rolls_back_earlier_changes ... ok1005test server_fns::projects::bulk_tests::bulk_preserves_invoiced_history_assignments_and_spend ... ok1006test server_fns::projects::bulk_tests::bulk_status_preserves_details_history_and_noop_versions ... ok1007test server_fns::projects::bulk_tests::bulk_reversed_overlapping_batches_finish_without_deadlock ... ok1008test server_fns::projects::mutation_tests::project::both_activation_transitions_preserve_details_and_change_once ... ok1009test server_fns::projects::mutation_tests::project::budgets_and_rates_distinguish_null_zero_and_normalized_values ... ok1010test server_fns::projects::mutation_tests::project::concurrent_deletion_is_rejected_by_both_mutations ... ok1011test server_fns::project_creation::import_tests::imports_preserve_finalized_project_configuration_and_restricted_access ... ok1012test server_fns::projects::mutation_tests::project::configured_edits_preserve_non_hourly_billing ... ok1013test server_fns::projects::mutation_tests::project::configured_edits_recheck_settings_after_waiting_for_the_project ... ok1014test server_fns::projects::mutation_tests::project::inactive_project_edits_preserve_identity_and_reject_implicit_migrations ... ok1015test server_fns::invoices::tests::invoice_preview_keeps_time_rates_and_defaults_in_one_snapshot ... ok1016test server_fns::projects::mutation_tests::project::configured_edits_reject_incompatible_financial_changes_atomically ... ok1017test server_fns::projects::mutation_tests::project::configured_edits_preserve_compatible_changes_and_idempotence ... ok1018test server_fns::projects::mutation_tests::project::missing_and_foreign_rows_are_not_noops ... ok1019test server_fns::projects::mutation_tests::project::invalid_project_fields_leave_the_row_unchanged ... ok1020test server_fns::projects::mutation_tests::project::repeating_a_competing_deactivation_reports_no_transition ... ok1021test server_fns::projects::mutation_tests::project::restoring_a_competing_deactivation_reports_reactivation ... ok1022test server_fns::projects::mutation_tests::project::repeating_a_competing_edit_requires_a_fresh_revision ... ok1023test server_fns::invoices::tests::invoice_defaults_apply_exact_adjustments_and_payment_terms ... ok1024test server_fns::projects::mutation_tests::project::restoring_a_competing_edit_does_not_overwrite_the_other_session ... ok1025test server_fns::projects::mutation_tests::project::unchanged_activation_preserves_the_row ... ok1026test server_fns::projects::mutation_tests::project::unchanged_edit_preserves_the_row ... ok1027test seed::tests::seed_refuses_an_initialized_organization_without_writes ... ok1028test server_fns::projects::mutation_tests::task::both_activation_transitions_preserve_details_and_change_once ... ok1029test server_fns::projects::mutation_tests::task::concurrent_deletion_returns_not_found_for_both_mutations ... ok1030test server_fns::projects::mutation_tests::task::each_detail_field_changes_once_and_preserves_inactive_status ... ok1031test server_fns::projects::mutation_tests::task::missing_and_foreign_rows_are_not_noops ... ok1032test harvest::pagination_tests::harvest_project_progress_permissions_cover_counts_pages_and_details has been running for over 60 seconds1033test server_fns::projects::mutation_tests::task::rate_edits_set_currency_without_relabelling_renames_or_noops ... ok1034test server_fns::projects::mutation_tests::task::repeating_a_competing_edit_does_not_report_a_change ... ok1035test server_fns::projects::mutation_tests::task::repeating_a_competing_deactivation_reports_no_transition ... ok1036test server_fns::projects::mutation_tests::task::unchanged_activation_preserves_the_row ... ok1037test server_fns::projects::mutation_tests::task::unchanged_edit_preserves_the_row ... ok1038test server_fns::projects::mutation_tests::task::restoring_a_competing_deactivation_reports_reactivation ... ok1039test server_fns::projects::mutation_tests::task::restoring_a_competing_edit_reports_a_change ... ok1040test server_fns::projects::privacy_tests::client_project_filter_preserves_progress_access_and_rate_redaction ... ok1041test server_fns::projects::privacy_tests::legacy_members_retain_progress_without_new_settings ... ok1042test jobs::report::stream_tests::download_keeps_its_snapshot_when_later_progress_archives_the_inline_tail ... ok1043test server_fns::projects::privacy_tests::private_progress_does_not_prevent_tracking_or_reveal_financial_fields ... ok1044test server_fns::projects::tests::assignments_are_scoped_to_the_viewers_organization ... ok1045test server_fns::projects::tests::creating_a_project_task_enables_it_with_its_defaults ... ok1046test server_fns::projects::privacy_tests::outsiders_and_inactive_viewers_have_no_project_reads ... ok1047test server_fns::projects::privacy_tests::revoked_membership_preserves_only_own_historical_tracking_identity ... ok1048test server_fns::projects::privacy_tests::project_members_and_leads_receive_progress_without_rates ... ok1049test server_fns::projects::privacy_tests::project_reads_use_current_authority_and_reject_foreign_scope ... ok1050test server_fns::projects::tests::enabling_is_tenant_scoped_even_for_existing_links_and_preserves_overrides ... ok1051test server_fns::projects::tests::project_rate_distinguishes_inheritance_zero_and_exact_amounts ... ok1052test jobs::outbox::tests::invalid_payload_is_not_delivered_and_does_not_leak_into_errors ... ok1053test server_fns::projects::tests::enabling_tasks_rejects_incompatible_catalog_currency ... ok1054test server_fns::projects::tests::enabling_tasks_accepts_exact_project_currency_rates_and_preserves_existing_links ... ok1055test server_fns::projects::tests::failed_project_task_creation_leaves_no_orphan_task ... ok1056test server_fns::projects::tests::enabling_tasks_rejects_explicit_rates_unused_by_the_project ... ok1057test server_fns::projects::tests::enabling_tasks_rejects_invalid_or_wrong_currency_explicit_rates_without_linking ... ok1058test server_fns::projects::tests::managers_and_admins_can_read_assignment_rates ... ok1059test server_fns::projects::tests::members_can_list_identities_but_not_assignment_rates ... ok1060test server_fns::projects::tests::project_rate_helper_has_no_public_execute_grant ... ok1061test server_fns::time_entries::tests::a_limit_bounds_a_listing_on_its_own ... ok1062test server_fns::projects::tests::enabling_tasks_only_inherits_rates_used_by_configured_projects ... ok1063test server_fns::projects::tests::project_rate_sql_matches_rust_for_missing_zero_and_present_sources ... ok1064test reports::streaming::database_tests::streamed_tag_filter_excludes_other_projects_without_duplicating_rows ... ok1065test server_fns::projects::tests::unknown_catalog_currency_requires_explicit_configured_rates_but_preserves_legacy ... ok1066test server_fns::time_entries::tests::an_unlimited_listing_needs_both_ends_of_the_range ... ok1067test server_fns::time_entries::tests::a_reorder_rejects_foreign_missing_timed_and_duplicate_ids ... ok1068test server_fns::time_entries::tests::clamps_duration_against_the_snapped_start ... ok1069test jobs::tests::expired_final_attempt_fails_without_claiming_again ... ok1070test server_fns::time_entries::tests::admin_may_log_time_without_assignment ... ok1071test server_fns::time_entries::tests::an_open_entry_can_move_into_a_day_with_locked_time ... ok1072test server_fns::time_entries::tests::a_running_timer_cannot_be_moved_to_another_day ... ok1073test server_fns::time_entries::tests::assigned_member_may_log_time ... ok1074test server_fns::time_entries::tests::concurrent_timer_starts_insert_exactly_one_entry ... ok1075test server_fns::time_entries::tests::edits_preserve_archived_time_but_cannot_override_non_billability ... ok1076test server_fns::time_entries::tests::rejects_out_of_range_start ... ok1077test server_fns::time_entries::tests::snaps_unaligned_start_to_the_grid ... ok1078test server_fns::time_entries::tests::new_time_and_picker_require_a_project_task_link ... ok1079test jobs::tests::outbox_claims_only_the_requested_event_kind ... ok1080test server_fns::time_entries::tests::inactive_project_cannot_accept_new_time_even_for_admin ... ok1081test server_fns::time_entries::tests::moving_locked_time_rejects_the_entire_reorder ... ok1082test server_fns::time_entries::tests::untimed_start_is_left_untouched ... ok1083test server_fns::time_entries::tests::new_time_and_picker_reject_inactive_or_foreign_contexts ... ok1084test server_fns::time_entries::tests::unassigned_member_is_forbidden ... ok1085test server_fns::time_entries::update_tests::competing_identical_edit_is_a_noop_after_the_first_commit ... ok1086test server_fns::time_entries::tests::new_time_uses_effective_billability_for_manual_entries_and_timers ... ok1087test server_fns::time_entries::tests::submission_barrier_blocks_manual_entries_and_timer_starts ... ok1088test server_fns::time_entries::tests::submission_barrier_blocks_edits_and_cross_week_reorders ... ok1089test server_fns::time_entries::update_tests::competing_edit_that_restores_old_values_still_reports_a_change ... ok1090test server_fns::time_entries::update_tests::concurrent_lock_or_delete_is_rechecked_before_editing ... ok1091test server_fns::reports::tests::tag_filters_keep_report_dimensions_and_details_in_sync ... ok1092test server_fns::time_entries::update_tests::effective_billability_noop_preserves_the_row ... ok1093test server_fns::time_entries::update_tests::normalized_noop_preserves_the_row_and_updated_at ... ok1094test server_fns::time_entries::update_tests::restricted_task_rejects_reschedule_and_delete ... ok1095test server_fns::time_entries::update_tests::restricted_empty_task_rejects_picker_manual_and_timer_starts ... ok1096test server_fns::time_entries::update_tests::restricted_empty_task_rejects_changes_and_noop_edits ... ok1097test server_fns::time_entries::update_tests::restricted_reordering_rejects_the_whole_batch ... ok1098test server_fns::time_entries::update_tests::missing_foreign_and_locked_entries_are_not_noops ... ok1099test server_fns::time_entries::update_tests::each_editable_field_changes_once_including_nulls ... ok1100test server_fns::invoices::fee_tests::settled_fee_sources_remain_reviewable_without_automatic_charges ... ok1101test server_fns::time_entries::update_tests::revoked_grant_does_not_trap_an_own_running_timer ... ok1102test server_fns::time_entries::update_tests::revoked_timer_stop_preserves_the_open_state_guard ... ok1103test server_fns::time_entries::update_tests::task_grant_revocation_committed_during_an_edit_is_rechecked ... ok1104test server_fns::time_entries::update_tests::restriction_changes_are_rechecked_before_manual_or_timer_insertion ... ok1105test server_fns::reports::tests::filters_and_renames_keep_report_identity_and_totals ... ok1106test server_fns::time_entries::update_tests::task_grants_allow_tracking_and_archived_history_for_every_role ... ok1107test server_fns::users::tests::concurrency::access_changes_cannot_target_another_organization ... ok1108test server_fns::users::tests::concurrency::concurrent_deactivations_keep_an_active_admin ... ok1109test server_fns::users::tests::concurrency::concurrent_demotions_keep_an_active_admin ... ok1110test server_fns::users::tests::concurrency::deactivation_and_demotion_keep_an_active_admin ... ok1111test server_fns::users::tests::concurrency::demotion_and_deactivation_keep_an_active_admin ... ok1112test server_fns::users::tests::hide_rates_clears_both_rate_fields ... ok1113test server_fns::users::tests::concurrency::the_last_admin_cannot_be_demoted_or_deactivated ... ok1114test server_fns::users::tests::concurrency::unchanged_admin_access_is_allowed ... ok1115test reports::limits::tests::export_queries_are_read_only_and_have_a_database_deadline ... ok1116test server_fns::invoices::tests::invoice_preview_matches_generation_without_claiming_time ... ok1117test server_fns::users::tests::authority::user_mutations_wait_for_actor_revocation_and_recheck_after_commit ... ok1118test server_fns::invoices::fee_tests::reviewed_generation_rejects_changed_time_before_claiming_it ... ok1119test server_fns::projects::details_tests::project_details_only_offer_task_rate_currency_to_current_managers ... ok1120test harvest::pagination_tests::harvest_project_progress_permissions_cover_counts_pages_and_details ... ok1121test server_fns::project_creation::import_tests::imported_catalog_rate_cannot_be_relabelled_as_workspace_currency ... ok1122test server_fns::invoices::fee_tests::zero_fee_is_invoiced_once_until_voided ... ok1123test server_fns::invoices::tests::invoice_defaults_legacy_insert_preserves_dates_and_exact_total ... ok1124test jobs::outbox::tests::acknowledges_confirmed_delivery_without_reclaiming_it has been running for over 60 seconds1125test server_fns::users::tests::authority::user_mutations_recheck_revocation_after_waiting_for_organization_lock ... ok1126test jobs::report::tests::report_fragments_survive_until_the_owning_job_expires has been running for over 60 seconds1127test jobs::report::tests::upgrading_legacy_reports_preserves_errors_and_fences_old_attempts has been running for over 60 seconds1128test jobs::tests::csv_job_persists_its_policy_with_the_upload has been running for over 60 seconds1129test jobs::tests::expired_lease_cannot_renew_or_commit_using_an_old_transaction_timestamp has been running for over 60 seconds1130test jobs::tests::import_adapters_reject_a_lease_from_another_organization has been running for over 60 seconds1131test jobs::tests::missing_configuration_records_error_and_requeues has been running for over 60 seconds1132test jobs::report::tests::upgrading_legacy_reports_preserves_errors_and_fences_old_attempts ... ok1133test server_fns::invoices::fee_tests::invoice_status_rechecks_authority_after_waiting_for_the_invoice_lock ... ok1134test server_fns::users::tests::authority::revoked_administrator_cannot_create_change_roles_or_deactivate ... ok1135test server_fns::users::tests::authority::active_administrator_can_create_change_roles_and_deactivate ... ok1136test jobs::tests::expired_lease_cannot_renew_or_commit_using_an_old_transaction_timestamp ... ok1137test reports::limits::tests::bounded_exports_preserve_real_workbooks_and_deterministic_pdf has been running for over 60 seconds1138test server_fns::users::tests::authority::access_transaction_holds_actor_authority_until_commit ... ok1139test reports::limits::tests::invoice_exports_show_saved_adjustments_and_exact_large_amounts has been running for over 60 seconds1140test reports::limits::tests::tag_filter_applies_before_xlsx_size_checks_and_rendering has been running for over 60 seconds1141test server_fns::invoices::fee_tests::discounted_fee_leaves_a_balance_and_void_releases_only_its_contribution ... ok1142test server_fns::projects::details_tests::unlinked_and_private_project_tags_do_not_leak_into_filters ... ok1143test reports::streaming::database_tests::streamed_invoice_metadata_and_lines_share_one_snapshot has been running for over 60 seconds1144test server_fns::users::tests::authority::duplicate_creation_rolls_back_and_leaves_access_changes_usable ... ok1145test jobs::tests::missing_configuration_records_error_and_requeues ... ok1146test reports::limits::tests::tag_filter_applies_before_xlsx_size_checks_and_rendering ... ok1147test jobs::report::tests::report_fragments_survive_until_the_owning_job_expires ... ok1148test server_fns::invoices::tests::imported_rates::rejected_import_rate_does_not_poison_the_next_row_or_its_catalog_rate ... ok1149test server_fns::invoices::tests::invoice_defaults_are_invoice_owned_and_only_drafts_are_editable ... ok1150test server_fns::project_creation::editing::tests::editor_load_uses_current_role_across_all_billing_configurations ... ok1151test server_fns::reports::tests::same_names_keep_separate_groups_for_every_dimension ... ok1152test server_fns::users::tests::authority::foreign_and_unknown_actors_cannot_change_local_user_access ... ok1153test server_fns::invoices::fee_tests::reviewed_generation_does_not_materialize_unselected_months ... ok1154test server_fns::invoices::tests::invoice_defaults_edit_rechecks_status_after_waiting_for_a_concurrent_send ... ok1155test server_fns::importers::authorization_tests::job_endpoints_enforce_session_role_and_organization has been running for over 60 seconds1156test server_fns::invoices::fee_tests::concurrent_discounted_invoice_retries_return_one_invoice has been running for over 60 seconds1157test server_fns::invoices::fee_tests::draft_fee_edit_replaces_amount_and_preserves_source_and_retry_identity has been running for over 60 seconds1158test server_fns::reports::tests::manager_report_omits_groups_containing_private_project_costs ... ok1159test server_fns::invoices::fee_tests::draft_fee_edit_replaces_amount_and_preserves_source_and_retry_identity ... ok1160test jobs::tests::csv_job_persists_its_policy_with_the_upload ... ok1161test server_fns::reports::tests::report_uses_current_active_actor_and_tenant_for_every_filter ... ok1162test server_fns::invoices::tests::invoice_defaults_conflict_rolls_back_all_claims ... ok1163test jobs::tests::import_adapters_reject_a_lease_from_another_organization ... ok1164test server_fns::reports::tests::shared_person_and_task_are_partitioned_by_currency ... ok1165test server_fns::invoices::tests::invoice_preview_requires_explicit_resolution_and_scopes_selected_projects ... ok1166test reports::limits::tests::invoice_exports_show_saved_adjustments_and_exact_large_amounts ... ok1167test reports::streaming::database_tests::streamed_invoice_metadata_and_lines_share_one_snapshot ... ok1168test server_fns::invoices::tests::invoice_preview_rejects_large_results_instead_of_truncating_them ... ok1169test server_fns::projects::details_tests::project_details_and_tags_follow_current_progress_and_private_permissions has been running for over 60 seconds1170test server_fns::importers::authorization_tests::job_endpoints_enforce_session_role_and_organization ... ok1171test reports::limits::tests::bounded_exports_preserve_real_workbooks_and_deterministic_pdf ... ok1172test server_fns::projects::details_tests::project_details_and_tags_follow_current_progress_and_private_permissions ... ok1173test jobs::outbox::tests::acknowledges_confirmed_delivery_without_reclaiming_it ... ok1174test server_fns::invoices::fee_tests::concurrent_discounted_invoice_retries_return_one_invoice ... ok11751176test result: ok. 828 passed; 0 failed; 11 ignored; 0 measured; 0 filtered out; finished in 123.93s11771178 Running tests/admin_shell.rs (target/debug/deps/admin_shell-cfc9086f36db03ff)11791180running 5 tests1181test pending_user_does_not_mount_admin_content ... ok1182test retry_waits_for_fresh_authorization_then_recovers ... ok1183test members_and_managers_never_mount_admin_content ... ok1184test resolved_admin_mounts_the_workspace_and_outlet ... ok1185test failed_user_does_not_mount_admin_content ... ok11861187test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.47s11881189 Running tests/cli_imports.rs (target/debug/deps/cli_imports-a04e6afe2c98a764)11901191running 5 tests1192test invalid_remote_arguments_have_a_machine_readable_exit ... ok1193test remote_configuration_errors_are_json_and_do_not_load_server_configuration ... ok1194test executable_wait_and_failure_exit_codes_match_the_json_contract ... FAILED1195test interrupting_the_executable_waiter_keeps_job_identity_and_never_sends_cancel ... ok1196test executable_commands_use_the_documented_authenticated_wire_contract ... ok11971198failures:11991200---- executable_wait_and_failure_exit_codes_match_the_json_contract stdout ----12011202thread 'executable_wait_and_failure_exit_codes_match_the_json_contract' (6580) panicked at crates/horae/tests/cli_imports.rs:330:13:1203assertion `left == right` failed: ["jobs", "wait", "01a11ad2-e680-74c2-a7d4-3bda51c2a8fe", "--timeout", "1"]: {"error":{"category":"timeout","message":"Wait deadline reached; job was not cancelled"},"job_id":"01a11ad2-e680-74c2-a7d4-3bda51c2a8fe","operation":"jobs.wait","outcome":"error","version":1}1204 left: Some(5)1205 right: Some(3)1206note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace120712081209failures:1210 executable_wait_and_failure_exit_codes_match_the_json_contract12111212test result: FAILED. 4 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 8.76s12131214error: test failed, to rerun pass `-p horae --test cli_imports`