<?xml version="1.0" encoding="utf-8"?><testsuites name="pytest tests"><testsuite name="pytest" errors="0" failures="0" skipped="0" tests="39" time="16.507" timestamp="2026-08-24T16:12:11.718185+00:00" hostname="agent-env-8d434a52-97b1-4e27-a4a8-46bda0918414"><testcase classname="tests.backend_test.TestHealth" name="test_root" time="0.358" /><testcase classname="tests.backend_test.TestHealth" name="test_presets" time="0.084" /><testcase classname="tests.backend_test.TestAuth" name="test_signup_returns_token" time="0.354" /><testcase classname="tests.backend_test.TestAuth" name="test_signup_duplicate_email" time="0.096" /><testcase classname="tests.backend_test.TestAuth" name="test_login_success" time="0.314" /><testcase classname="tests.backend_test.TestAuth" name="test_login_wrong_password" time="0.289" /><testcase classname="tests.backend_test.TestAuth" name="test_login_seeded_user" time="0.298" /><testcase classname="tests.backend_test.TestAuth" name="test_me" time="0.215" /><testcase classname="tests.backend_test.TestAuth" name="test_me_unauthenticated" time="0.115" /><testcase classname="tests.backend_test.TestAuth" name="test_me_bad_token" time="0.085" /><testcase classname="tests.backend_test.TestBilling" name="test_start_trial" time="0.094" /><testcase classname="tests.backend_test.TestBilling" name="test_start_trial_idempotent" time="0.081" /><testcase classname="tests.backend_test.TestBilling" name="test_billing_status" time="0.085" /><testcase classname="tests.backend_test.TestBilling" name="test_checkout_returns_stripe_url" time="2.134" /><testcase classname="tests.backend_test.TestBilling" name="test_payment_status_unknown_session" time="0.072" /><testcase classname="tests.backend_test.TestBilling" name="test_checkout_requires_auth" time="0.080" /><testcase classname="tests.backend_test.TestCompanions" name="test_created_fields" time="0.070" /><testcase classname="tests.backend_test.TestCompanions" name="test_list_and_get" time="0.141" /><testcase classname="tests.backend_test.TestCompanions" name="test_update_persists" time="0.247" /><testcase classname="tests.backend_test.TestCompanions" name="test_patch_identity" time="0.155" /><testcase classname="tests.backend_test.TestCompanions" name="test_invalid_mode" time="0.083" /><testcase classname="tests.backend_test.TestCompanions" name="test_invalid_limit_preset" time="0.079" /><testcase classname="tests.backend_test.TestCompanions" name="test_get_nonexistent" time="0.111" /><testcase classname="tests.backend_test.TestCompanions" name="test_ownership_isolation" time="0.590" /><testcase classname="tests.backend_test.TestCompanions" name="test_delete_cascades" time="0.371" /><testcase classname="tests.backend_test.TestChat" name="test_chat_returns_ai_reply" time="3.014" /><testcase classname="tests.backend_test.TestChat" name="test_messages_history_ordered" time="0.077" /><testcase classname="tests.backend_test.TestChat" name="test_usage_endpoint" time="0.093" /><testcase classname="tests.backend_test.TestChat" name="test_chat_unauthenticated" time="0.084" /><testcase classname="tests.backend_test.TestSafety" name="test_crisis_message" time="0.080" /><testcase classname="tests.backend_test.TestSafety" name="test_unsafe_romantic" time="0.092" /><testcase classname="tests.backend_test.TestMemories" name="test_auto_extracted_memories_exist" time="3.093" /><testcase classname="tests.backend_test.TestMemories" name="test_memory_crud" time="0.350" /><testcase classname="tests.backend_test.TestMemories" name="test_promote_candidate_to_saved" time="0.134" /><testcase classname="tests.backend_test.TestMemories" name="test_update_nonexistent_memory" time="0.070" /><testcase classname="tests.backend_test.TestMemories" name="test_update_memory_empty_body" time="0.081" /><testcase classname="tests.backend_test.TestMemories" name="test_delete_nonexistent_memory" time="0.087" /><testcase classname="tests.backend_test.TestConversationLimit" name="test_light_preset_429_after_limit" time="2.182" /><testcase classname="tests.backend_test.TestConversationLimit" name="test_open_preset_unlimited" time="0.355" /></testsuite></testsuites>