Loopback worker ready; mode=scripted test_trained_archive_loads (test_archive.ColdArchive.test_trained_archive_loads) ... ok test_next_user_yes_can_still_confirm (test_confirmation_replay.ConfirmationReplay.test_next_user_yes_can_still_confirm) ... {COMPANION}/tutorials/jev-with-rasa/mantle/.venv/lib/python3.12/site-packages/rasa/shared/core/flows/flow.py:64: PydanticDeprecatedSince20: Support for class-based `config` is deprecated, use ConfigDict instead. Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.13/migration/ class FlowLanguageTranslation(BaseModel): {COMPANION}/tutorials/jev-with-rasa/mantle/.venv/lib/python3.12/site-packages/rasa/shared/providers/_configs/azure_entra_id_config.py:398: PydanticDeprecatedSince20: Support for class-based `config` is deprecated, use ConfigDict instead. Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.13/migration/ class AzureEntraIDOAuthConfig(OAuth, BaseModel): {COMPANION}/tutorials/jev-with-rasa/mantle/.venv/lib/python3.12/site-packages/rasa/shared/providers/_configs/azure_openai_client_config.py:88: PydanticDeprecatedSince20: Support for class-based `config` is deprecated, use ConfigDict instead. Deprecated in Pydantic V2.0 to be removed in V3.0. See Pydantic V2 Migration Guide at https://errors.pydantic.dev/2.13/migration/ class OAuthConfigWrapper(OAuth, BaseModel): {COMPANION}/tutorials/jev-with-rasa/mantle/.venv/lib/python3.12/site-packages/rasa/core/channels/voice_stream/browser_audio.py:3: DeprecationWarning: 'audioop' is deprecated and slated for removal in Python 3.13 import audioop Executing wait_for=._call_check_cancel() at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/futures.py:389, Task.task_wakeup()] created at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/base_events.py:448> cb=[_run_until_complete_cb() at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/base_events.py:181] created at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/runners.py:100> took 1.251 seconds Executing result=None created at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/runners.py:100> took 0.502 seconds ok test_same_later_yes_is_refused_after_intervening_user_turn (test_confirmation_replay.ConfirmationReplay.test_same_later_yes_is_refused_after_intervening_user_turn) ... Executing wait_for=._call_check_cancel() at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/futures.py:389, Task.task_wakeup()] created at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/base_events.py:448> cb=[_run_until_complete_cb() at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/base_events.py:181] created at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/runners.py:100> took 0.515 seconds Executing result=None created at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/runners.py:100> took 0.502 seconds ok test_changed_size_refuses_snapshot (test_local_artifacts.LocalArtifacts.test_changed_size_refuses_snapshot) ... ok test_malformed_body_and_question_return_400_before_inference (test_local_artifacts.LocalArtifacts.test_malformed_body_and_question_return_400_before_inference) ... ok test_only_five_pinned_paths_are_verified (test_local_artifacts.LocalArtifacts.test_only_five_pinned_paths_are_verified) ... ok test_same_size_tampering_refuses_snapshot (test_local_artifacts.LocalArtifacts.test_same_size_tampering_refuses_snapshot) ... ok test_actual_mantle_tool_reaches_native_sdk_and_read (test_mantle_binding.MantleBindings.test_actual_mantle_tool_reaches_native_sdk_and_read) ... Executing result=None created at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/runners.py:100> took 0.502 seconds ok test_actual_no_cancels_without_reading (test_mantle_binding.MantleBindings.test_actual_no_cancels_without_reading) ... Executing result=None created at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/runners.py:100> took 0.501 seconds ok test_demo_identity_cannot_be_rebound (test_mantle_binding.MantleBindings.test_demo_identity_cannot_be_rebound) ... Executing result=None created at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/runners.py:100> took 0.500 seconds ok test_expiry_cancels_exact_worker_token_and_later_confirm_is_refused (test_mantle_binding.MantleBindings.test_expiry_cancels_exact_worker_token_and_later_confirm_is_refused) ... Executing result=None created at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/runners.py:100> took 0.502 seconds ok test_interrupted_proposal_is_not_bound_for_confirmation (test_mantle_binding.MantleBindings.test_interrupted_proposal_is_not_bound_for_confirmation) ... Executing result=None created at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/runners.py:100> took 0.501 seconds ok test_lost_cancel_removes_local_copy_but_worker_token_remains (test_mantle_binding.MantleBindings.test_lost_cancel_removes_local_copy_but_worker_token_remains) ... Executing result=None created at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/runners.py:100> took 0.502 seconds ok test_non_confirmation_does_not_read (test_mantle_binding.MantleBindings.test_non_confirmation_does_not_read) ... Executing result=None created at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/runners.py:100> took 0.499 seconds ok test_other_sender_has_no_inherited_binding (test_mantle_binding.MantleBindings.test_other_sender_has_no_inherited_binding) ... Executing result=None created at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/runners.py:100> took 0.500 seconds ok test_same_user_event_cannot_confirm_its_own_proposal (test_mantle_binding.MantleBindings.test_same_user_event_cannot_confirm_its_own_proposal) ... Executing result=None created at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/runners.py:100> took 0.501 seconds ok test_tool_does_not_offer_owner_or_account_id (test_mantle_binding.MantleBindings.test_tool_does_not_offer_owner_or_account_id) ... Executing result=None created at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/runners.py:100> took 0.499 seconds ok test_unbound_sender_is_refused_before_worker (test_mantle_binding.MantleBindings.test_unbound_sender_is_refused_before_worker) ... Executing result=None created at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/runners.py:100> took 0.500 seconds ok test_worker_connection_error_does_not_invent_rows (test_mantle_binding.MantleBindings.test_worker_connection_error_does_not_invent_rows) ... Executing result=None created at {USER_HOME}/.local/share/uv/python/cpython-3.12.13-macos-aarch64-none/lib/python3.12/asyncio/runners.py:100> took 0.498 seconds ok test_cancel_reads_nothing_and_retires_token (test_proposals.ProposalControls.test_cancel_reads_nothing_and_retires_token) ... ok test_confirmed_proposal_reads_once_without_another_model_call (test_proposals.ProposalControls.test_confirmed_proposal_reads_once_without_another_model_call) ... ok test_different_conversation_cannot_consume_a_proposal (test_proposals.ProposalControls.test_different_conversation_cannot_consume_a_proposal) ... ok test_different_owner_cannot_consume_a_proposal (test_proposals.ProposalControls.test_different_owner_cannot_consume_a_proposal) ... ok test_new_proposal_retires_previous_token (test_proposals.ProposalControls.test_new_proposal_retires_previous_token) ... ok test_proposal_reads_nothing (test_proposals.ProposalControls.test_proposal_reads_nothing) ... ok test_retirement_after_proposal_refuses_the_confirmed_read (test_proposals.ProposalControls.test_retirement_after_proposal_refuses_the_confirmed_read) ... ok test_active_state_is_rechecked_even_if_revision_was_not_bumped (test_selector.SelectionControls.test_active_state_is_rechecked_even_if_revision_was_not_bumped) ... ok test_clarification_does_not_read (test_selector.SelectionControls.test_clarification_does_not_read) ... ok test_current_account_read (test_selector.SelectionControls.test_current_account_read) ... ok test_execution_guard_alone_refuses_unknown_choice (test_selector.SelectionControls.test_execution_guard_alone_refuses_unknown_choice) ... ok test_high_confidence_cannot_add_another_owners_account (test_selector.SelectionControls.test_high_confidence_cannot_add_another_owners_account) ... ok test_high_confidence_cannot_authorise_a_stale_choice (test_selector.SelectionControls.test_high_confidence_cannot_authorise_a_stale_choice) ... ok test_invalid_confidence_is_refused (test_selector.SelectionControls.test_invalid_confidence_is_refused) ... ok test_invalid_message_does_not_call_sdk (test_selector.SelectionControls.test_invalid_message_does_not_call_sdk) ... ok test_invalid_probability_sum_is_refused (test_selector.SelectionControls.test_invalid_probability_sum_is_refused) ... ok test_malformed_answer_is_unavailable (test_selector.SelectionControls.test_malformed_answer_is_unavailable) ... ok test_missing_answer_is_refused (test_selector.SelectionControls.test_missing_answer_is_refused) ... ok test_model_drift_is_refused (test_selector.SelectionControls.test_model_drift_is_refused) ... ok test_no_accounts_does_not_call_sdk (test_selector.SelectionControls.test_no_accounts_does_not_call_sdk) ... ok test_non_json_response_is_unavailable (test_selector.SelectionControls.test_non_json_response_is_unavailable) ... ok test_one_client_is_reused_for_two_requests (test_selector.SelectionControls.test_one_client_is_reused_for_two_requests) ... ok test_owner_is_rechecked_even_if_revision_was_not_bumped (test_selector.SelectionControls.test_owner_is_rechecked_even_if_revision_was_not_bumped) ... ok test_probability_keys_must_match_the_request (test_selector.SelectionControls.test_probability_keys_must_match_the_request) ... ok test_request_contains_only_offered_owner_accounts_and_model_pin (test_selector.SelectionControls.test_request_contains_only_offered_owner_accounts_and_model_pin) ... ok test_retryable_http_error_makes_only_one_attempt (test_selector.SelectionControls.test_retryable_http_error_makes_only_one_attempt) ... ok test_sdk_type_decoding_does_not_enforce_offered_choice_membership (test_selector.SelectionControls.test_sdk_type_decoding_does_not_enforce_offered_choice_membership) ... ok test_unknown_demo_does_not_call_sdk (test_selector.SelectionControls.test_unknown_demo_does_not_call_sdk) ... ok test_valid_eligible_choice_can_still_be_wrong_for_the_request (test_selector.SelectionControls.test_valid_eligible_choice_can_still_be_wrong_for_the_request) ... ok test_distinguishable_fixture_rows_expose_payload_only_limit (test_trial_score_controls.TrialScoreControls.test_distinguishable_fixture_rows_expose_payload_only_limit) ... ok test_duplicate_cases_cannot_pad_checks (test_trial_score_controls.TrialScoreControls.test_duplicate_cases_cannot_pad_checks) ... ok test_fixing_actual_account_changes_acceptance (test_trial_score_controls.TrialScoreControls.test_fixing_actual_account_changes_acceptance) ... ok test_identical_payloads_approve_the_wrong_account (test_trial_score_controls.TrialScoreControls.test_identical_payloads_approve_the_wrong_account) ... ok test_default_main_reuses_one_real_client_and_closes_it (test_worker_lifecycle.WorkerLifecycle.test_default_main_reuses_one_real_client_and_closes_it) ... ok ---------------------------------------------------------------------- Ran 53 tests in 11.675s OK