<?xml version="1.0" encoding="utf-8"?><testsuites name="pytest tests"><testsuite name="pytest" errors="0" failures="0" skipped="0" tests="25" time="3.854" timestamp="2026-06-13T15:52:03.156803+00:00" hostname="agent-env-07c95d3f-5a6a-49ec-9dd7-5643f5c9eede"><testcase classname="tests.test_vision_identify.TestVisionIdentify" name="test_missing_image_data_url_returns_400" time="0.555" /><testcase classname="tests.test_vision_identify.TestVisionIdentify" name="test_invalid_data_url_returns_400" time="0.045" /><testcase classname="tests.test_vision_identify.TestVisionIdentify" name="test_unauthenticated_callers_blocked" time="0.108" /><testcase classname="tests.test_vision_identify.TestVisionIdentify" name="test_endpoint_mounted_and_returns_schema" time="1.275" /><testcase classname="tests.test_smoke.TestLogin" name="test_root_responds" time="0.102" /><testcase classname="tests.test_smoke.TestLogin" name="test_admin_can_login" time="0.047" /><testcase classname="tests.test_smoke.TestLogin" name="test_bad_credentials_rejected" time="0.135" /><testcase classname="tests.test_smoke.TestSystemHealth" name="test_health_endpoint" time="0.051" /><testcase classname="tests.test_smoke.TestSystemHealth" name="test_health_blocked_for_anonymous" time="0.113" /><testcase classname="tests.test_smoke.TestErrorTracking" name="test_frontend_can_post_anonymously" time="0.100" /><testcase classname="tests.test_smoke.TestErrorTracking" name="test_admin_can_list_errors" time="0.152" /><testcase classname="tests.test_smoke.TestErrorTracking" name="test_admin_can_get_stats" time="0.047" /><testcase classname="tests.test_smoke.TestPermissions" name="test_anonymous_cannot_list_users" time="0.111" /><testcase classname="tests.test_smoke.TestPermissions" name="test_anonymous_cannot_clear_errors" time="0.137" /><testcase classname="tests.test_smoke.TestInventoryCRUD" name="test_item_appears_in_list" time="0.139" /><testcase classname="tests.test_smoke.TestInventoryCRUD" name="test_item_can_be_updated" time="0.142" /><testcase classname="tests.test_smoke.TestInvoiceFlow" name="test_invoice_created_with_totals" time="0.184" /><testcase classname="tests.test_smoke.TestInvoiceFlow" name="test_invoice_appears_in_listing" time="0.049" /><testcase classname="tests.test_smoke.TestDatabaseConsistency" name="test_companies_list_serializable" time="0.044" /><testcase classname="tests.test_smoke.TestDatabaseConsistency" name="test_items_list_serializable" time="0.046" /><testcase classname="tests.test_smoke.TestDatabaseConsistency" name="test_health_endpoint_serializable" time="0.050" /><testcase classname="tests.test_smoke.TestPdfAndPrint" name="test_items_excel_template_downloads" time="0.054" /><testcase classname="tests.test_smoke.TestPdfAndPrint" name="test_parties_excel_template_downloads" time="0.050" /><testcase classname="tests.test_smoke.TestPdfAndPrint" name="test_label_templates_list" time="0.045" /><testcase classname="tests.test_smoke" name="test_zzz_summary" time="0.044" /></testsuite></testsuites>