{
  "config": {
    "configFile": "/home/senke/git/talas/veza/apps/web/playwright.config.ts",
    "rootDir": "/home/senke/git/talas/veza/apps/web/e2e",
    "forbidOnly": false,
    "fullyParallel": true,
    "globalSetup": "/home/senke/git/talas/veza/apps/web/e2e/global-setup.ts",
    "globalTeardown": null,
    "globalTimeout": 0,
    "grep": {},
    "grepInvert": null,
    "maxFailures": 0,
    "metadata": {
      "actualWorkers": 1
    },
    "preserveOutput": "always",
    "reporter": [
      [
        "html",
        null
      ],
      [
        "json",
        {
          "outputFile": "e2e-results.json"
        }
      ]
    ],
    "reportSlowTests": {
      "max": 5,
      "threshold": 300000
    },
    "quiet": false,
    "projects": [
      {
        "outputDir": "/home/senke/git/talas/veza/apps/web/test-results",
        "repeatEach": 1,
        "retries": 0,
        "metadata": {
          "actualWorkers": 1
        },
        "id": "chromium",
        "name": "chromium",
        "testDir": "/home/senke/git/talas/veza/apps/web/e2e",
        "testIgnore": [],
        "testMatch": [
          "**/*.@(spec|test).?(c|m)[jt]s?(x)"
        ],
        "timeout": 60000
      },
      {
        "outputDir": "/home/senke/git/talas/veza/apps/web/test-results",
        "repeatEach": 1,
        "retries": 0,
        "metadata": {
          "actualWorkers": 1
        },
        "id": "firefox",
        "name": "firefox",
        "testDir": "/home/senke/git/talas/veza/apps/web/e2e",
        "testIgnore": [],
        "testMatch": [
          "**/*.@(spec|test).?(c|m)[jt]s?(x)"
        ],
        "timeout": 60000
      },
      {
        "outputDir": "/home/senke/git/talas/veza/apps/web/test-results",
        "repeatEach": 1,
        "retries": 0,
        "metadata": {
          "actualWorkers": 1
        },
        "id": "webkit",
        "name": "webkit",
        "testDir": "/home/senke/git/talas/veza/apps/web/e2e",
        "testIgnore": [],
        "testMatch": [
          "**/*.@(spec|test).?(c|m)[jt]s?(x)"
        ],
        "timeout": 60000
      },
      {
        "outputDir": "/home/senke/git/talas/veza/apps/web/test-results",
        "repeatEach": 1,
        "retries": 0,
        "metadata": {
          "actualWorkers": 1
        },
        "id": "msedge",
        "name": "msedge",
        "testDir": "/home/senke/git/talas/veza/apps/web/e2e",
        "testIgnore": [],
        "testMatch": [
          "**/*.@(spec|test).?(c|m)[jt]s?(x)"
        ],
        "timeout": 60000
      }
    ],
    "shard": null,
    "tags": [],
    "updateSnapshots": "missing",
    "updateSourceMethod": "patch",
    "version": "1.57.0",
    "workers": 1,
    "webServer": {
      "command": "npm run dev",
      "url": "http://localhost:5173",
      "reuseExistingServer": true,
      "timeout": 120000
    }
  },
  "suites": [
    {
      "title": "auth.spec.ts",
      "file": "auth.spec.ts",
      "column": 0,
      "line": 0,
      "specs": [],
      "suites": [
        {
          "title": "Authentication Flow",
          "file": "auth.spec.ts",
          "line": 25,
          "column": 6,
          "specs": [
            {
              "title": "should login successfully with valid credentials",
              "ok": true,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "chromium",
                  "projectName": "chromium",
                  "results": [
                    {
                      "workerIndex": 0,
                      "parallelIndex": 0,
                      "status": "passed",
                      "duration": 3948,
                      "errors": [],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Login with valid credentials\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[type=\"email\"], input[name=\"email\"] with value: e2e@test.com\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[type=\"email\"], input[name=\"email\"] filled successfully\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[type=\"password\"], input[name=\"password\"] with value: Xk9$mP2#vL7@nQ4!wR8\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[type=\"password\"], input[name=\"password\"] filled successfully\n"
                        },
                        {
                          "text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
                        },
                        {
                          "text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
                        },
                        {
                          "text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
                        },
                        {
                          "text": "🚀 [FORM SUBMIT] Submitting form...\n"
                        },
                        {
                          "text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
                        },
                        {
                          "text": "⏳ [AUTH TEST] Waiting for Zustand to persist auth-storage...\n"
                        },
                        {
                          "text": "  ✅ TOKEN FOUND: eyJhbGciOiJIUzI1NiIsInR5cCI6Ik... (source: storage)\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] Login successful (token in storage)\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No network errors\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:50:21.035Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "expected"
                }
              ],
              "id": "d748ac400d08b85935ef-efd14549b37f77aa6096",
              "file": "auth.spec.ts",
              "line": 41,
              "column": 3
            },
            {
              "title": "should show error with invalid credentials",
              "ok": true,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "chromium",
                  "projectName": "chromium",
                  "results": [
                    {
                      "workerIndex": 0,
                      "parallelIndex": 0,
                      "status": "passed",
                      "duration": 1997,
                      "errors": [],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Login with invalid credentials\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[type=\"email\"], input[name=\"email\"] with value: wrong@example.com\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[type=\"email\"], input[name=\"email\"] filled successfully\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[type=\"password\"], input[name=\"password\"] with value: wrongpassword\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[type=\"password\"], input[name=\"password\"] filled successfully\n"
                        },
                        {
                          "text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
                        },
                        {
                          "text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
                        },
                        {
                          "text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
                        },
                        {
                          "text": "🚀 [FORM SUBMIT] Submitting form...\n"
                        },
                        {
                          "text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
                        },
                        {
                          "text": "🔔 [TOAST] Waiting for error message...\n"
                        },
                        {
                          "text": "🔴 [NETWORK ERROR] POST http://127.0.0.1:8080/api/v1/auth/login: 423\n"
                        },
                        {
                          "text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 423 (Locked)\n"
                        },
                        {
                          "text": "✅ [TOAST] error message: Account is locked. Please try again later.\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] Error shown for invalid credentials\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Console errors (1):\n"
                        },
                        {
                          "text": "  - Failed to load resource: the server responded with a status of 423 (Locked)\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Network errors (1):\n"
                        },
                        {
                          "text": "  - POST http://127.0.0.1:8080/api/v1/auth/login: 423\n"
                        }
                      ],
                      "stderr": [
                        {
                          "text": "⚠️ [AUTH TEST] Test passed but had console errors\n"
                        }
                      ],
                      "retry": 0,
                      "startTime": "2026-01-10T21:50:25.101Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "expected"
                }
              ],
              "id": "d748ac400d08b85935ef-32f56b95de6bdc3a9955",
              "file": "auth.spec.ts",
              "line": 107,
              "column": 3
            },
            {
              "title": "should register a new user successfully",
              "ok": true,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "chromium",
                  "projectName": "chromium",
                  "results": [
                    {
                      "workerIndex": 0,
                      "parallelIndex": 0,
                      "status": "passed",
                      "duration": 4110,
                      "errors": [],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: User registration\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[name=\"email\"], input#email with value: test-1768081828662@example.com\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[name=\"email\"], input#email filled successfully\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[name=\"username\"], input#username with value: testuser1768081828662\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[name=\"username\"], input#username filled successfully\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[name=\"password\"], input#password with value: Str0ng!P@ssw0rd2024\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[name=\"password\"], input#password filled successfully\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[name=\"passwordConfirm\"], input[name=\"password_confirm\"], input[name=\"confirmPassword\"], input#passwordConfirm with value: Str0ng!P@ssw0rd2024\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[name=\"passwordConfirm\"], input[name=\"password_confirm\"], input[name=\"confirmPassword\"], input#passwordConfirm filled successfully\n"
                        },
                        {
                          "text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
                        },
                        {
                          "text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
                        },
                        {
                          "text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
                        },
                        {
                          "text": "🚀 [FORM SUBMIT] Submitting form...\n"
                        },
                        {
                          "text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] Registration successful with auto-login\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No network errors\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:50:27.127Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "expected"
                }
              ],
              "id": "d748ac400d08b85935ef-c1f7fb06f3779f5e6fd5",
              "file": "auth.spec.ts",
              "line": 134,
              "column": 3
            },
            {
              "title": "should show error when registering with existing email",
              "ok": true,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "chromium",
                  "projectName": "chromium",
                  "results": [
                    {
                      "workerIndex": 0,
                      "parallelIndex": 0,
                      "status": "passed",
                      "duration": 5254,
                      "errors": [],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Registration with existing email\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[name=\"email\"], input#email with value: e2e@test.com\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[name=\"email\"], input#email filled successfully\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[name=\"username\"], input#username with value: existinguser\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[name=\"username\"], input#username filled successfully\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[name=\"password\"], input#password with value: Str0ng!P@ssw0rd2024\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[name=\"password\"], input#password filled successfully\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[name=\"passwordConfirm\"], input[name=\"password_confirm\"], input[name=\"confirmPassword\"], input#passwordConfirm with value: Str0ng!P@ssw0rd2024\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[name=\"passwordConfirm\"], input[name=\"password_confirm\"], input[name=\"confirmPassword\"], input#passwordConfirm filled successfully\n"
                        },
                        {
                          "text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
                        },
                        {
                          "text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
                        },
                        {
                          "text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
                        },
                        {
                          "text": "🚀 [FORM SUBMIT] Submitting form...\n"
                        },
                        {
                          "text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
                        },
                        {
                          "text": "🔴 [NETWORK ERROR] POST http://127.0.0.1:8080/api/v1/auth/register: 409\n"
                        },
                        {
                          "text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 409 (Conflict)\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] Error shown for existing email: \"User already exists\"\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Console errors (1):\n"
                        },
                        {
                          "text": "  - Failed to load resource: the server responded with a status of 409 (Conflict)\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Network errors (1):\n"
                        },
                        {
                          "text": "  - POST http://127.0.0.1:8080/api/v1/auth/register: 409\n"
                        }
                      ],
                      "stderr": [
                        {
                          "text": "⚠️ [AUTH TEST] Test passed but had console errors\n"
                        }
                      ],
                      "retry": 0,
                      "startTime": "2026-01-10T21:50:31.266Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "expected"
                }
              ],
              "id": "d748ac400d08b85935ef-53d5184b470bb63aefc3",
              "file": "auth.spec.ts",
              "line": 231,
              "column": 3
            },
            {
              "title": "should logout successfully",
              "ok": true,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "chromium",
                  "projectName": "chromium",
                  "results": [
                    {
                      "workerIndex": 0,
                      "parallelIndex": 0,
                      "status": "passed",
                      "duration": 8189,
                      "errors": [],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Logout\n"
                        },
                        {
                          "text": "🔐 [LOGIN] Attempting authentication as e2e@test.com...\n"
                        },
                        {
                          "text": "⏳ [LOGIN] Waiting 500ms before login (1768081836583ms since last login)...\n"
                        },
                        {
                          "text": "✏️ [LOGIN] User not authenticated, proceeding with login form...\n"
                        },
                        {
                          "text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
                        },
                        {
                          "text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
                        },
                        {
                          "text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
                        },
                        {
                          "text": "🚀 [FORM SUBMIT] Submitting form...\n"
                        },
                        {
                          "text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
                        },
                        {
                          "text": "⏳ [LOGIN] Waiting for networkidle after navigation...\n"
                        },
                        {
                          "text": "⏳ [LOGIN] Waiting for auth state to be persisted...\n"
                        },
                        {
                          "text": "🔍 [LOGIN] Verifying authentication state...\n"
                        },
                        {
                          "text": "  ✅ TOKEN FOUND: eyJhbGciOiJIUzI1NiIsInR5cCI6Ik... (source: storage)\n"
                        },
                        {
                          "text": "✅ [LOGIN] Successfully authenticated as e2e@test.com (token: eyJhbGciOiJIUzI1NiIs...)\n"
                        },
                        {
                          "text": "🔍 [AUTH TEST] Checking token presence before logout...\n"
                        },
                        {
                          "text": "  ✅ TOKEN FOUND: eyJhbGciOiJIUzI1NiIsInR5cCI6Ik... (source: storage)\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] Token present before logout: eyJhbGciOiJIUzI1NiIsInR5cCI6Ik...\n"
                        },
                        {
                          "text": "🔴 [NETWORK ERROR] POST http://127.0.0.1:8080/api/v1/auth/logout: 400\n"
                        },
                        {
                          "text": "🔴 [CONSOLE ERROR] Failed to load resource: the server responded with a status of 400 (Bad Request)\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] Logout successful\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Console errors (1):\n"
                        },
                        {
                          "text": "  - Failed to load resource: the server responded with a status of 400 (Bad Request)\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Network errors (1):\n"
                        },
                        {
                          "text": "  - POST http://127.0.0.1:8080/api/v1/auth/logout: 400\n"
                        }
                      ],
                      "stderr": [
                        {
                          "text": "⚠️ [LOGIN] Form not visible and not on dashboard. Proceeding (might fail)...\n"
                        },
                        {
                          "text": "⚠️ [AUTH TEST] Test passed but had console errors\n"
                        }
                      ],
                      "retry": 0,
                      "startTime": "2026-01-10T21:50:36.538Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "expected"
                }
              ],
              "id": "d748ac400d08b85935ef-c0ce6ccc7b7e02794edb",
              "file": "auth.spec.ts",
              "line": 293,
              "column": 3
            },
            {
              "title": "should redirect to login when accessing protected route without auth",
              "ok": true,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "chromium",
                  "projectName": "chromium",
                  "results": [
                    {
                      "workerIndex": 0,
                      "parallelIndex": 0,
                      "status": "passed",
                      "duration": 2542,
                      "errors": [],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Route guard test\n"
                        },
                        {
                          "text": "🔴 [REQUEST FAILED] GET http://localhost:5173/node_modules/.vite/deps/chunk-KOCE3OZ5.js?v=3f421a3c: net::ERR_ABORTED\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] Route guard working correctly\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Network errors (1):\n"
                        },
                        {
                          "text": "  - GET http://localhost:5173/node_modules/.vite/deps/chunk-KOCE3OZ5.js?v=3f421a3c: 0\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:50:44.752Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "expected"
                }
              ],
              "id": "d748ac400d08b85935ef-4d2eb13aa042aa0b2d41",
              "file": "auth.spec.ts",
              "line": 373,
              "column": 3
            },
            {
              "title": "should persist authentication after page refresh",
              "ok": true,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "chromium",
                  "projectName": "chromium",
                  "results": [
                    {
                      "workerIndex": 0,
                      "parallelIndex": 0,
                      "status": "passed",
                      "duration": 19135,
                      "errors": [],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Auth persistence test\n"
                        },
                        {
                          "text": "🔐 [LOGIN] Attempting authentication as e2e@test.com...\n"
                        },
                        {
                          "text": "⏳ [LOGIN] Waiting 500ms before login (20281ms since last login)...\n"
                        },
                        {
                          "text": "✏️ [LOGIN] User not authenticated, proceeding with login form...\n"
                        },
                        {
                          "text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
                        },
                        {
                          "text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
                        },
                        {
                          "text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
                        },
                        {
                          "text": "🚀 [FORM SUBMIT] Submitting form...\n"
                        },
                        {
                          "text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
                        },
                        {
                          "text": "⏳ [LOGIN] Waiting for networkidle after navigation...\n"
                        },
                        {
                          "text": "⏳ [LOGIN] Waiting for auth state to be persisted...\n"
                        },
                        {
                          "text": "🔍 [LOGIN] Verifying authentication state...\n"
                        },
                        {
                          "text": "  ✅ TOKEN FOUND: eyJhbGciOiJIUzI1NiIsInR5cCI6Ik... (source: storage)\n"
                        },
                        {
                          "text": "✅ [LOGIN] Successfully authenticated as e2e@test.com (token: eyJhbGciOiJIUzI1NiIs...)\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] Authenticated before refresh\n"
                        },
                        {
                          "text": "  ✅ TOKEN FOUND: eyJhbGciOiJIUzI1NiIsInR5cCI6Ik... (source: storage)\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] Correctly persisted authentication after refresh\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No network errors\n"
                        }
                      ],
                      "stderr": [
                        {
                          "text": "⚠️ [LOGIN] Form not visible and not on dashboard. Proceeding (might fail)...\n"
                        }
                      ],
                      "retry": 0,
                      "startTime": "2026-01-10T21:50:47.310Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "expected"
                }
              ],
              "id": "d748ac400d08b85935ef-fb094c064cf6c63bcced",
              "file": "auth.spec.ts",
              "line": 395,
              "column": 3
            },
            {
              "title": "should validate login form fields",
              "ok": true,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "chromium",
                  "projectName": "chromium",
                  "results": [
                    {
                      "workerIndex": 0,
                      "parallelIndex": 0,
                      "status": "passed",
                      "duration": 3410,
                      "errors": [],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Login form validation\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] Form validation prevented submission (stayed on login page)\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No network errors\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:51:06.459Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "expected"
                }
              ],
              "id": "d748ac400d08b85935ef-73ae53ed4fd70aaa00c2",
              "file": "auth.spec.ts",
              "line": 452,
              "column": 3
            },
            {
              "title": "should show error when passwords do not match during registration",
              "ok": true,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "chromium",
                  "projectName": "chromium",
                  "results": [
                    {
                      "workerIndex": 0,
                      "parallelIndex": 0,
                      "status": "passed",
                      "duration": 4310,
                      "errors": [],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Password mismatch validation\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[name=\"email\"], input#email with value: newuser@example.com\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[name=\"email\"], input#email filled successfully\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[name=\"password\"], input#password with value: Password123456!\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[name=\"password\"], input#password filled successfully\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[name=\"passwordConfirm\"], input[name=\"password_confirm\"], input[name=\"confirmPassword\"] with value: DifferentPassword!\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[name=\"passwordConfirm\"], input[name=\"password_confirm\"], input[name=\"confirmPassword\"] filled successfully\n"
                        },
                        {
                          "text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
                        },
                        {
                          "text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
                        },
                        {
                          "text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
                        },
                        {
                          "text": "🚀 [FORM SUBMIT] Submitting form...\n"
                        },
                        {
                          "text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] Password mismatch error shown (found by text)\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No network errors\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:51:09.890Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "expected"
                }
              ],
              "id": "d748ac400d08b85935ef-184539997e56a19b11c0",
              "file": "auth.spec.ts",
              "line": 509,
              "column": 3
            },
            {
              "title": "should login successfully with valid credentials",
              "ok": true,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "firefox",
                  "projectName": "firefox",
                  "results": [
                    {
                      "workerIndex": 1,
                      "parallelIndex": 0,
                      "status": "passed",
                      "duration": 5503,
                      "errors": [],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Login with valid credentials\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[type=\"email\"], input[name=\"email\"] with value: e2e@test.com\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[type=\"email\"], input[name=\"email\"] filled successfully\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[type=\"password\"], input[name=\"password\"] with value: Xk9$mP2#vL7@nQ4!wR8\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[type=\"password\"], input[name=\"password\"] filled successfully\n"
                        },
                        {
                          "text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
                        },
                        {
                          "text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
                        },
                        {
                          "text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
                        },
                        {
                          "text": "🚀 [FORM SUBMIT] Submitting form...\n"
                        },
                        {
                          "text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
                        },
                        {
                          "text": "🔴 [CONSOLE ERROR] [JavaScript Error: \"Cookie “refresh_token” has been rejected because it is in a cross-site context and its “SameSite” is “Lax” or “Strict”.\" {file: \"http://127.0.0.1:8080/api/v1/auth/login\" line: 0}]\n"
                        },
                        {
                          "text": "⏳ [AUTH TEST] Waiting for Zustand to persist auth-storage...\n"
                        },
                        {
                          "text": "  ✅ TOKEN FOUND: eyJhbGciOiJIUzI1NiIsInR5cCI6Ik... (source: storage)\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] Login successful (token in storage)\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Console errors (1):\n"
                        },
                        {
                          "text": "  - [JavaScript Error: \"Cookie “refresh_token” has been rejected because it is in a cross-site context and its “SameSite” is “Lax” or “Strict”.\" {file: \"http://127.0.0.1:8080/api/v1/auth/login\" line: 0}]\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No network errors\n"
                        }
                      ],
                      "stderr": [
                        {
                          "text": "⚠️ [AUTH TEST] Test passed but had console errors\n"
                        }
                      ],
                      "retry": 0,
                      "startTime": "2026-01-10T21:51:15.269Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "expected"
                }
              ],
              "id": "d748ac400d08b85935ef-14d0e4fdf8b73cd887ae",
              "file": "auth.spec.ts",
              "line": 41,
              "column": 3
            },
            {
              "title": "should show error with invalid credentials",
              "ok": true,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "firefox",
                  "projectName": "firefox",
                  "results": [
                    {
                      "workerIndex": 1,
                      "parallelIndex": 0,
                      "status": "passed",
                      "duration": 1858,
                      "errors": [],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Login with invalid credentials\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[type=\"email\"], input[name=\"email\"] with value: wrong@example.com\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[type=\"email\"], input[name=\"email\"] filled successfully\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[type=\"password\"], input[name=\"password\"] with value: wrongpassword\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[type=\"password\"], input[name=\"password\"] filled successfully\n"
                        },
                        {
                          "text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
                        },
                        {
                          "text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
                        },
                        {
                          "text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
                        },
                        {
                          "text": "🚀 [FORM SUBMIT] Submitting form...\n"
                        },
                        {
                          "text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
                        },
                        {
                          "text": "🔔 [TOAST] Waiting for error message...\n"
                        },
                        {
                          "text": "🔴 [NETWORK ERROR] POST http://127.0.0.1:8080/api/v1/auth/login: 423\n"
                        },
                        {
                          "text": "✅ [TOAST] error message: Account is locked. Please try again later.\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] Error shown for invalid credentials\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Network errors (1):\n"
                        },
                        {
                          "text": "  - POST http://127.0.0.1:8080/api/v1/auth/login: 423\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:51:21.304Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "expected"
                }
              ],
              "id": "d748ac400d08b85935ef-d2604529717af9e35508",
              "file": "auth.spec.ts",
              "line": 107,
              "column": 3
            },
            {
              "title": "should register a new user successfully",
              "ok": true,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "firefox",
                  "projectName": "firefox",
                  "results": [
                    {
                      "workerIndex": 1,
                      "parallelIndex": 0,
                      "status": "passed",
                      "duration": 3681,
                      "errors": [],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: User registration\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[name=\"email\"], input#email with value: test-1768081884491@example.com\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[name=\"email\"], input#email filled successfully\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[name=\"username\"], input#username with value: testuser1768081884491\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[name=\"username\"], input#username filled successfully\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[name=\"password\"], input#password with value: Str0ng!P@ssw0rd2024\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[name=\"password\"], input#password filled successfully\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[name=\"passwordConfirm\"], input[name=\"password_confirm\"], input[name=\"confirmPassword\"], input#passwordConfirm with value: Str0ng!P@ssw0rd2024\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[name=\"passwordConfirm\"], input[name=\"password_confirm\"], input[name=\"confirmPassword\"], input#passwordConfirm filled successfully\n"
                        },
                        {
                          "text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
                        },
                        {
                          "text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
                        },
                        {
                          "text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
                        },
                        {
                          "text": "🚀 [FORM SUBMIT] Submitting form...\n"
                        },
                        {
                          "text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
                        },
                        {
                          "text": "🔴 [CONSOLE ERROR] [JavaScript Error: \"Cookie “refresh_token” has been rejected because it is in a cross-site context and its “SameSite” is “Lax” or “Strict”.\" {file: \"http://127.0.0.1:8080/api/v1/auth/register\" line: 0}]\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] Registration successful with auto-login\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Console errors (1):\n"
                        },
                        {
                          "text": "  - [JavaScript Error: \"Cookie “refresh_token” has been rejected because it is in a cross-site context and its “SameSite” is “Lax” or “Strict”.\" {file: \"http://127.0.0.1:8080/api/v1/auth/register\" line: 0}]\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No network errors\n"
                        }
                      ],
                      "stderr": [
                        {
                          "text": "⚠️ [AUTH TEST] Test passed but had console errors\n"
                        }
                      ],
                      "retry": 0,
                      "startTime": "2026-01-10T21:51:23.192Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "expected"
                }
              ],
              "id": "d748ac400d08b85935ef-e25661f5336753eaeb6e",
              "file": "auth.spec.ts",
              "line": 134,
              "column": 3
            },
            {
              "title": "should show error when registering with existing email",
              "ok": true,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "firefox",
                  "projectName": "firefox",
                  "results": [
                    {
                      "workerIndex": 1,
                      "parallelIndex": 0,
                      "status": "passed",
                      "duration": 5870,
                      "errors": [],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Registration with existing email\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[name=\"email\"], input#email with value: e2e@test.com\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[name=\"email\"], input#email filled successfully\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[name=\"username\"], input#username with value: existinguser\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[name=\"username\"], input#username filled successfully\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[name=\"password\"], input#password with value: Str0ng!P@ssw0rd2024\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[name=\"password\"], input#password filled successfully\n"
                        },
                        {
                          "text": "✏️ [FILL] Filling field input[name=\"passwordConfirm\"], input[name=\"password_confirm\"], input[name=\"confirmPassword\"], input#passwordConfirm with value: Str0ng!P@ssw0rd2024\n"
                        },
                        {
                          "text": "✅ [FILL] Field input[name=\"passwordConfirm\"], input[name=\"password_confirm\"], input[name=\"confirmPassword\"], input#passwordConfirm filled successfully\n"
                        },
                        {
                          "text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
                        },
                        {
                          "text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
                        },
                        {
                          "text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
                        },
                        {
                          "text": "🚀 [FORM SUBMIT] Submitting form...\n"
                        },
                        {
                          "text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
                        },
                        {
                          "text": "🔴 [NETWORK ERROR] POST http://127.0.0.1:8080/api/v1/auth/register: 409\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] Error shown for existing email: \"User already exists\"\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Network errors (1):\n"
                        },
                        {
                          "text": "  - POST http://127.0.0.1:8080/api/v1/auth/register: 409\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:51:26.901Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "expected"
                }
              ],
              "id": "d748ac400d08b85935ef-8e523d14978e1481a048",
              "file": "auth.spec.ts",
              "line": 231,
              "column": 3
            },
            {
              "title": "should logout successfully",
              "ok": true,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "firefox",
                  "projectName": "firefox",
                  "results": [
                    {
                      "workerIndex": 1,
                      "parallelIndex": 0,
                      "status": "passed",
                      "duration": 9716,
                      "errors": [],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Logout\n"
                        },
                        {
                          "text": "🔐 [LOGIN] Attempting authentication as e2e@test.com...\n"
                        },
                        {
                          "text": "⏳ [LOGIN] Waiting 500ms before login (1768081893040ms since last login)...\n"
                        },
                        {
                          "text": "✏️ [LOGIN] User not authenticated, proceeding with login form...\n"
                        },
                        {
                          "text": "⚡ [FORM SUBMIT] Forcing submission of form: form\n"
                        },
                        {
                          "text": "🔍 [FORM SUBMIT] Waiting for form selector: form\n"
                        },
                        {
                          "text": "⏳ [FORM SUBMIT] Waiting for React to update state...\n"
                        },
                        {
                          "text": "🚀 [FORM SUBMIT] Submitting form...\n"
                        },
                        {
                          "text": "✅ [FORM SUBMIT] Form form submitted successfully\n"
                        },
                        {
                          "text": "🔴 [CONSOLE ERROR] [JavaScript Error: \"Cookie “refresh_token” has been rejected because it is in a cross-site context and its “SameSite” is “Lax” or “Strict”.\" {file: \"http://127.0.0.1:8080/api/v1/auth/login\" line: 0}]\n"
                        },
                        {
                          "text": "⏳ [LOGIN] Waiting for networkidle after navigation...\n"
                        },
                        {
                          "text": "⏳ [LOGIN] Waiting for auth state to be persisted...\n"
                        },
                        {
                          "text": "🔍 [LOGIN] Verifying authentication state...\n"
                        },
                        {
                          "text": "  ✅ TOKEN FOUND: eyJhbGciOiJIUzI1NiIsInR5cCI6Ik... (source: storage)\n"
                        },
                        {
                          "text": "✅ [LOGIN] Successfully authenticated as e2e@test.com (token: eyJhbGciOiJIUzI1NiIs...)\n"
                        },
                        {
                          "text": "🔍 [AUTH TEST] Checking token presence before logout...\n"
                        },
                        {
                          "text": "  ✅ TOKEN FOUND: eyJhbGciOiJIUzI1NiIsInR5cCI6Ik... (source: storage)\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] Token present before logout: eyJhbGciOiJIUzI1NiIsInR5cCI6Ik...\n"
                        },
                        {
                          "text": "🔴 [NETWORK ERROR] POST http://127.0.0.1:8080/api/v1/auth/logout: 400\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] Logout successful\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Console errors (1):\n"
                        },
                        {
                          "text": "  - [JavaScript Error: \"Cookie “refresh_token” has been rejected because it is in a cross-site context and its “SameSite” is “Lax” or “Strict”.\" {file: \"http://127.0.0.1:8080/api/v1/auth/login\" line: 0}]\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Network errors (1):\n"
                        },
                        {
                          "text": "  - POST http://127.0.0.1:8080/api/v1/auth/logout: 400\n"
                        }
                      ],
                      "stderr": [
                        {
                          "text": "⚠️ [LOGIN] Form not visible and not on dashboard. Proceeding (might fail)...\n"
                        },
                        {
                          "text": "⚠️ [AUTH TEST] Test passed but had console errors\n"
                        }
                      ],
                      "retry": 0,
                      "startTime": "2026-01-10T21:51:32.792Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "expected"
                }
              ],
              "id": "d748ac400d08b85935ef-4410c42745b7a4d89d03",
              "file": "auth.spec.ts",
              "line": 293,
              "column": 3
            },
            {
              "title": "should redirect to login when accessing protected route without auth",
              "ok": true,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "firefox",
                  "projectName": "firefox",
                  "results": [
                    {
                      "workerIndex": 1,
                      "parallelIndex": 0,
                      "status": "passed",
                      "duration": 2298,
                      "errors": [],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Route guard test\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] Route guard working correctly\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No network errors\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:51:42.548Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "expected"
                }
              ],
              "id": "d748ac400d08b85935ef-4329ca7f3e8c21f77534",
              "file": "auth.spec.ts",
              "line": 373,
              "column": 3
            },
            {
              "title": "should persist authentication after page refresh",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "firefox",
                  "projectName": "firefox",
                  "results": [
                    {
                      "workerIndex": 1,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 12981,
                      "error": {
                        "message": "Error: page.goto: NS_ERROR_CONNECTION_REFUSED\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\u001b[22m\n",
                        "stack": "Error: page.goto: NS_ERROR_CONNECTION_REFUSED\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\u001b[22m\n\n    at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:174:18)\n    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:403:5",
                        "location": {
                          "file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
                          "column": 18,
                          "line": 174
                        },
                        "snippet": "\u001b[90m   at \u001b[39mutils/test-helpers.ts:174\n\n\u001b[0m \u001b[90m 172 |\u001b[39m   \u001b[36mwhile\u001b[39m (retries \u001b[33m>\u001b[39m \u001b[35m0\u001b[39m) {\n \u001b[90m 173 |\u001b[39m     \u001b[36mtry\u001b[39m {\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 174 |\u001b[39m       \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/login`\u001b[39m\u001b[33m,\u001b[39m {\n \u001b[90m     |\u001b[39m                  \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 175 |\u001b[39m         waitUntil\u001b[33m:\u001b[39m \u001b[32m'domcontentloaded'\u001b[39m\u001b[33m,\u001b[39m\n \u001b[90m 176 |\u001b[39m         timeout\u001b[33m:\u001b[39m \u001b[33mTEST_CONFIG\u001b[39m\u001b[33m.\u001b[39m\u001b[33mDEFAULT_TIMEOUT\u001b[39m\u001b[33m,\u001b[39m\n \u001b[90m 177 |\u001b[39m       })\u001b[33m;\u001b[39m\u001b[0m"
                      },
                      "errors": [
                        {
                          "location": {
                            "file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
                            "column": 18,
                            "line": 174
                          },
                          "message": "Error: page.goto: NS_ERROR_CONNECTION_REFUSED\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\u001b[22m\n\n\n\u001b[90m   at \u001b[39mutils/test-helpers.ts:174\n\n\u001b[0m \u001b[90m 172 |\u001b[39m   \u001b[36mwhile\u001b[39m (retries \u001b[33m>\u001b[39m \u001b[35m0\u001b[39m) {\n \u001b[90m 173 |\u001b[39m     \u001b[36mtry\u001b[39m {\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 174 |\u001b[39m       \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/login`\u001b[39m\u001b[33m,\u001b[39m {\n \u001b[90m     |\u001b[39m                  \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 175 |\u001b[39m         waitUntil\u001b[33m:\u001b[39m \u001b[32m'domcontentloaded'\u001b[39m\u001b[33m,\u001b[39m\n \u001b[90m 176 |\u001b[39m         timeout\u001b[33m:\u001b[39m \u001b[33mTEST_CONFIG\u001b[39m\u001b[33m.\u001b[39m\u001b[33mDEFAULT_TIMEOUT\u001b[39m\u001b[33m,\u001b[39m\n \u001b[90m 177 |\u001b[39m       })\u001b[33m;\u001b[39m\u001b[0m\n\u001b[2m    at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:174:18)\u001b[22m\n\u001b[2m    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:403:5\u001b[22m"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Auth persistence test\n"
                        },
                        {
                          "text": "🔐 [LOGIN] Attempting authentication as e2e@test.com...\n"
                        },
                        {
                          "text": "⏳ [LOGIN] Waiting 500ms before login (21565ms since last login)...\n"
                        },
                        {
                          "text": "🔴 [REQUEST FAILED] GET http://localhost:5173/login: NS_ERROR_CONNECTION_REFUSED\n"
                        },
                        {
                          "text": "🔴 [REQUEST FAILED] GET http://localhost:5173/login: NS_ERROR_CONNECTION_REFUSED\n"
                        },
                        {
                          "text": "🔴 [REQUEST FAILED] GET http://localhost:5173/login: NS_ERROR_CONNECTION_REFUSED\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Network errors (3):\n"
                        },
                        {
                          "text": "  - GET http://localhost:5173/login: 0\n"
                        },
                        {
                          "text": "  - GET http://localhost:5173/login: 0\n"
                        },
                        {
                          "text": "  - GET http://localhost:5173/login: 0\n"
                        }
                      ],
                      "stderr": [
                        {
                          "text": "⚠️ [LOGIN] Navigation failed (retries left: 2): page.goto: NS_ERROR_CONNECTION_REFUSED\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\u001b[22m\n\n    at loginAsUser \u001b[90m(/home/senke/git/talas/veza/apps/web/\u001b[39me2e/utils/test-helpers.ts:174:18\u001b[90m)\u001b[39m\n    at \u001b[90m/home/senke/git/talas/veza/apps/web/\u001b[39me2e/auth.spec.ts:403:5 {\n  name: \u001b[32m'Error'\u001b[39m,\n  [\u001b[32mSymbol(step)\u001b[39m]: {\n    location: {\n      file: \u001b[32m'/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts'\u001b[39m,\n      line: \u001b[33m174\u001b[39m,\n      column: \u001b[33m18\u001b[39m,\n      function: \u001b[32m'loginAsUser'\u001b[39m\n    },\n    category: \u001b[32m'pw:api'\u001b[39m,\n    title: \u001b[32m'Navigate to \"/login\"'\u001b[39m,\n    apiName: \u001b[32m'page.goto'\u001b[39m,\n    params: {\n      url: \u001b[32m'http://localhost:5173/login'\u001b[39m,\n      waitUntil: \u001b[32m'domcontentloaded'\u001b[39m,\n      timeout: \u001b[33m30000\u001b[39m\n    },\n    group: \u001b[90mundefined\u001b[39m,\n    stepId: \u001b[32m'pw:api@28'\u001b[39m,\n    boxedStack: \u001b[90mundefined\u001b[39m,\n    steps: [],\n    attachmentIndices: [],\n    info: TestStepInfoImpl {\n      annotations: [],\n      _testInfo: \u001b[36m[TestInfoImpl]\u001b[39m,\n      _stepId: \u001b[32m'pw:api@28'\u001b[39m,\n      _title: \u001b[32m'Navigate to \"/login\"'\u001b[39m,\n      _parentStep: \u001b[90mundefined\u001b[39m,\n      skip: \u001b[36m[Function (anonymous)]\u001b[39m\n    },\n    complete: \u001b[36m[Function: complete]\u001b[39m,\n    endWallTime: \u001b[33m1768081915627\u001b[39m,\n    error: {\n      message: \u001b[32m'Error: page.goto: NS_ERROR_CONNECTION_REFUSED\\n'\u001b[39m +\n        \u001b[32m'Call log:\\n'\u001b[39m +\n        \u001b[32m'\\x1B[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\\x1B[22m\\n'\u001b[39m,\n      stack: \u001b[32m'Error: page.goto: NS_ERROR_CONNECTION_REFUSED\\n'\u001b[39m +\n        \u001b[32m'Call log:\\n'\u001b[39m +\n        \u001b[32m'\\x1B[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\\x1B[22m\\n'\u001b[39m +\n        \u001b[32m'\\n'\u001b[39m +\n        \u001b[32m'    at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:174:18)\\n'\u001b[39m +\n        \u001b[32m'    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:403:5'\u001b[39m,\n      cause: \u001b[90mundefined\u001b[39m\n    }\n  }\n}\n"
                        },
                        {
                          "text": "⚠️ [LOGIN] Navigation failed (retries left: 1): page.goto: NS_ERROR_CONNECTION_REFUSED\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\u001b[22m\n\n    at loginAsUser \u001b[90m(/home/senke/git/talas/veza/apps/web/\u001b[39me2e/utils/test-helpers.ts:174:18\u001b[90m)\u001b[39m\n    at \u001b[90m/home/senke/git/talas/veza/apps/web/\u001b[39me2e/auth.spec.ts:403:5 {\n  name: \u001b[32m'Error'\u001b[39m,\n  [\u001b[32mSymbol(step)\u001b[39m]: {\n    location: {\n      file: \u001b[32m'/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts'\u001b[39m,\n      line: \u001b[33m174\u001b[39m,\n      column: \u001b[33m18\u001b[39m,\n      function: \u001b[32m'loginAsUser'\u001b[39m\n    },\n    category: \u001b[32m'pw:api'\u001b[39m,\n    title: \u001b[32m'Navigate to \"/login\"'\u001b[39m,\n    apiName: \u001b[32m'page.goto'\u001b[39m,\n    params: {\n      url: \u001b[32m'http://localhost:5173/login'\u001b[39m,\n      waitUntil: \u001b[32m'domcontentloaded'\u001b[39m,\n      timeout: \u001b[33m30000\u001b[39m\n    },\n    group: \u001b[90mundefined\u001b[39m,\n    stepId: \u001b[32m'pw:api@30'\u001b[39m,\n    boxedStack: \u001b[90mundefined\u001b[39m,\n    steps: [],\n    attachmentIndices: [],\n    info: TestStepInfoImpl {\n      annotations: [],\n      _testInfo: \u001b[36m[TestInfoImpl]\u001b[39m,\n      _stepId: \u001b[32m'pw:api@30'\u001b[39m,\n      _title: \u001b[32m'Navigate to \"/login\"'\u001b[39m,\n      _parentStep: \u001b[90mundefined\u001b[39m,\n      skip: \u001b[36m[Function (anonymous)]\u001b[39m\n    },\n    complete: \u001b[36m[Function: complete]\u001b[39m,\n    endWallTime: \u001b[33m1768081916650\u001b[39m,\n    error: {\n      message: \u001b[32m'Error: page.goto: NS_ERROR_CONNECTION_REFUSED\\n'\u001b[39m +\n        \u001b[32m'Call log:\\n'\u001b[39m +\n        \u001b[32m'\\x1B[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\\x1B[22m\\n'\u001b[39m,\n      stack: \u001b[32m'Error: page.goto: NS_ERROR_CONNECTION_REFUSED\\n'\u001b[39m +\n        \u001b[32m'Call log:\\n'\u001b[39m +\n        \u001b[32m'\\x1B[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\\x1B[22m\\n'\u001b[39m +\n        \u001b[32m'\\n'\u001b[39m +\n        \u001b[32m'    at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:174:18)\\n'\u001b[39m +\n        \u001b[32m'    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:403:5'\u001b[39m,\n      cause: \u001b[90mundefined\u001b[39m\n    }\n  }\n}\n"
                        },
                        {
                          "text": "⚠️ [LOGIN] Navigation failed (retries left: 0): page.goto: NS_ERROR_CONNECTION_REFUSED\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\u001b[22m\n\n    at loginAsUser \u001b[90m(/home/senke/git/talas/veza/apps/web/\u001b[39me2e/utils/test-helpers.ts:174:18\u001b[90m)\u001b[39m\n    at \u001b[90m/home/senke/git/talas/veza/apps/web/\u001b[39me2e/auth.spec.ts:403:5 {\n  name: \u001b[32m'Error'\u001b[39m,\n  [\u001b[32mSymbol(step)\u001b[39m]: {\n    location: {\n      file: \u001b[32m'/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts'\u001b[39m,\n      line: \u001b[33m174\u001b[39m,\n      column: \u001b[33m18\u001b[39m,\n      function: \u001b[32m'loginAsUser'\u001b[39m\n    },\n    category: \u001b[32m'pw:api'\u001b[39m,\n    title: \u001b[32m'Navigate to \"/login\"'\u001b[39m,\n    apiName: \u001b[32m'page.goto'\u001b[39m,\n    params: {\n      url: \u001b[32m'http://localhost:5173/login'\u001b[39m,\n      waitUntil: \u001b[32m'domcontentloaded'\u001b[39m,\n      timeout: \u001b[33m30000\u001b[39m\n    },\n    group: \u001b[90mundefined\u001b[39m,\n    stepId: \u001b[32m'pw:api@32'\u001b[39m,\n    boxedStack: \u001b[90mundefined\u001b[39m,\n    steps: [],\n    attachmentIndices: [],\n    info: TestStepInfoImpl {\n      annotations: [],\n      _testInfo: \u001b[36m[TestInfoImpl]\u001b[39m,\n      _stepId: \u001b[32m'pw:api@32'\u001b[39m,\n      _title: \u001b[32m'Navigate to \"/login\"'\u001b[39m,\n      _parentStep: \u001b[90mundefined\u001b[39m,\n      skip: \u001b[36m[Function (anonymous)]\u001b[39m\n    },\n    complete: \u001b[36m[Function: complete]\u001b[39m,\n    endWallTime: \u001b[33m1768081917665\u001b[39m,\n    error: {\n      message: \u001b[32m'Error: page.goto: NS_ERROR_CONNECTION_REFUSED\\n'\u001b[39m +\n        \u001b[32m'Call log:\\n'\u001b[39m +\n        \u001b[32m'\\x1B[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\\x1B[22m\\n'\u001b[39m,\n      stack: \u001b[32m'Error: page.goto: NS_ERROR_CONNECTION_REFUSED\\n'\u001b[39m +\n        \u001b[32m'Call log:\\n'\u001b[39m +\n        \u001b[32m'\\x1B[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\\x1B[22m\\n'\u001b[39m +\n        \u001b[32m'\\n'\u001b[39m +\n        \u001b[32m'    at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:174:18)\\n'\u001b[39m +\n        \u001b[32m'    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:403:5'\u001b[39m,\n      cause: \u001b[90mundefined\u001b[39m\n    }\n  }\n}\n"
                        }
                      ],
                      "retry": 0,
                      "startTime": "2026-01-10T21:51:44.885Z",
                      "annotations": [],
                      "attachments": [
                        {
                          "name": "screenshot",
                          "contentType": "image/png",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-12d3c-tication-after-page-refresh-firefox/test-failed-1.png"
                        },
                        {
                          "name": "video",
                          "contentType": "video/webm",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-12d3c-tication-after-page-refresh-firefox/video.webm"
                        },
                        {
                          "name": "error-context",
                          "contentType": "text/markdown",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-12d3c-tication-after-page-refresh-firefox/error-context.md"
                        }
                      ],
                      "errorLocation": {
                        "file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
                        "column": 18,
                        "line": 174
                      }
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-7ce71de8a36364c96c8d",
              "file": "auth.spec.ts",
              "line": 395,
              "column": 3
            },
            {
              "title": "should validate login form fields",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "firefox",
                  "projectName": "firefox",
                  "results": [
                    {
                      "workerIndex": 2,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 843,
                      "error": {
                        "message": "Error: page.goto: NS_ERROR_CONNECTION_REFUSED\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"load\"\u001b[22m\n",
                        "stack": "Error: page.goto: NS_ERROR_CONNECTION_REFUSED\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"load\"\u001b[22m\n\n    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:455:16",
                        "location": {
                          "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                          "column": 16,
                          "line": 455
                        },
                        "snippet": "\u001b[0m \u001b[90m 453 |\u001b[39m     console\u001b[33m.\u001b[39mlog(\u001b[32m'🧪 [AUTH TEST] Running: Login form validation'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 454 |\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 455 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/login`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m     |\u001b[39m                \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 456 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mwaitForLoadState(\u001b[32m'domcontentloaded'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 457 |\u001b[39m\n \u001b[90m 458 |\u001b[39m     \u001b[90m// Wait for form to be ready\u001b[39m\u001b[0m"
                      },
                      "errors": [
                        {
                          "location": {
                            "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                            "column": 16,
                            "line": 455
                          },
                          "message": "Error: page.goto: NS_ERROR_CONNECTION_REFUSED\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"load\"\u001b[22m\n\n\n\u001b[0m \u001b[90m 453 |\u001b[39m     console\u001b[33m.\u001b[39mlog(\u001b[32m'🧪 [AUTH TEST] Running: Login form validation'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 454 |\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 455 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/login`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m     |\u001b[39m                \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 456 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mwaitForLoadState(\u001b[32m'domcontentloaded'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 457 |\u001b[39m\n \u001b[90m 458 |\u001b[39m     \u001b[90m// Wait for form to be ready\u001b[39m\u001b[0m\n\u001b[2m    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:455:16\u001b[22m"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Login form validation\n"
                        },
                        {
                          "text": "🔴 [REQUEST FAILED] GET http://localhost:5173/login: NS_ERROR_CONNECTION_REFUSED\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Network errors (1):\n"
                        },
                        {
                          "text": "  - GET http://localhost:5173/login: 0\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:51:58.883Z",
                      "annotations": [],
                      "attachments": [
                        {
                          "name": "screenshot",
                          "contentType": "image/png",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-should-validate-login-form-fields-firefox/test-failed-1.png"
                        },
                        {
                          "name": "video",
                          "contentType": "video/webm",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-should-validate-login-form-fields-firefox/video.webm"
                        },
                        {
                          "name": "error-context",
                          "contentType": "text/markdown",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-should-validate-login-form-fields-firefox/error-context.md"
                        }
                      ],
                      "errorLocation": {
                        "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                        "column": 16,
                        "line": 455
                      }
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-9f21426262cd48deaf49",
              "file": "auth.spec.ts",
              "line": 452,
              "column": 3
            },
            {
              "title": "should show error when passwords do not match during registration",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "firefox",
                  "projectName": "firefox",
                  "results": [
                    {
                      "workerIndex": 3,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 929,
                      "error": {
                        "message": "Error: page.goto: NS_ERROR_CONNECTION_REFUSED\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/register\", waiting until \"load\"\u001b[22m\n",
                        "stack": "Error: page.goto: NS_ERROR_CONNECTION_REFUSED\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/register\", waiting until \"load\"\u001b[22m\n\n    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:512:16",
                        "location": {
                          "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                          "column": 16,
                          "line": 512
                        },
                        "snippet": "\u001b[0m \u001b[90m 510 |\u001b[39m     console\u001b[33m.\u001b[39mlog(\u001b[32m'🧪 [AUTH TEST] Running: Password mismatch validation'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 511 |\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 512 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/register`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m     |\u001b[39m                \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 513 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mwaitForLoadState(\u001b[32m'domcontentloaded'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 514 |\u001b[39m\n \u001b[90m 515 |\u001b[39m     \u001b[90m// Attendre que la page soit complètement chargée\u001b[39m\u001b[0m"
                      },
                      "errors": [
                        {
                          "location": {
                            "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                            "column": 16,
                            "line": 512
                          },
                          "message": "Error: page.goto: NS_ERROR_CONNECTION_REFUSED\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/register\", waiting until \"load\"\u001b[22m\n\n\n\u001b[0m \u001b[90m 510 |\u001b[39m     console\u001b[33m.\u001b[39mlog(\u001b[32m'🧪 [AUTH TEST] Running: Password mismatch validation'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 511 |\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 512 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/register`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m     |\u001b[39m                \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 513 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mwaitForLoadState(\u001b[32m'domcontentloaded'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 514 |\u001b[39m\n \u001b[90m 515 |\u001b[39m     \u001b[90m// Attendre que la page soit complètement chargée\u001b[39m\u001b[0m\n\u001b[2m    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:512:16\u001b[22m"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Password mismatch validation\n"
                        },
                        {
                          "text": "🔴 [REQUEST FAILED] GET http://localhost:5173/register: NS_ERROR_CONNECTION_REFUSED\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Network errors (1):\n"
                        },
                        {
                          "text": "  - GET http://localhost:5173/register: 0\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:52:01.197Z",
                      "annotations": [],
                      "attachments": [
                        {
                          "name": "screenshot",
                          "contentType": "image/png",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-216c1-t-match-during-registration-firefox/test-failed-1.png"
                        },
                        {
                          "name": "video",
                          "contentType": "video/webm",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-216c1-t-match-during-registration-firefox/video.webm"
                        },
                        {
                          "name": "error-context",
                          "contentType": "text/markdown",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-216c1-t-match-during-registration-firefox/error-context.md"
                        }
                      ],
                      "errorLocation": {
                        "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                        "column": 16,
                        "line": 512
                      }
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-3b0220e3d2e27f513770",
              "file": "auth.spec.ts",
              "line": 509,
              "column": 3
            },
            {
              "title": "should login successfully with valid credentials",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "webkit",
                  "projectName": "webkit",
                  "results": [
                    {
                      "workerIndex": 4,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 6,
                      "error": {
                        "message": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝",
                        "stack": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝"
                      },
                      "errors": [
                        {
                          "message": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No network errors\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:52:04.404Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-9e1583275625d6e8142a",
              "file": "auth.spec.ts",
              "line": 41,
              "column": 3
            },
            {
              "title": "should show error with invalid credentials",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "webkit",
                  "projectName": "webkit",
                  "results": [
                    {
                      "workerIndex": 5,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 7,
                      "error": {
                        "message": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝",
                        "stack": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝"
                      },
                      "errors": [
                        {
                          "message": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No network errors\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:52:05.509Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-4201a53bab8fcc8ef77f",
              "file": "auth.spec.ts",
              "line": 107,
              "column": 3
            },
            {
              "title": "should register a new user successfully",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "webkit",
                  "projectName": "webkit",
                  "results": [
                    {
                      "workerIndex": 6,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 6,
                      "error": {
                        "message": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝",
                        "stack": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝"
                      },
                      "errors": [
                        {
                          "message": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No network errors\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:52:06.649Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-e1e04a4d63f068ce6c7f",
              "file": "auth.spec.ts",
              "line": 134,
              "column": 3
            },
            {
              "title": "should show error when registering with existing email",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "webkit",
                  "projectName": "webkit",
                  "results": [
                    {
                      "workerIndex": 7,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 10,
                      "error": {
                        "message": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝",
                        "stack": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝"
                      },
                      "errors": [
                        {
                          "message": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No network errors\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:52:07.973Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-e9be5a0fa5f268f981b2",
              "file": "auth.spec.ts",
              "line": 231,
              "column": 3
            },
            {
              "title": "should logout successfully",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "webkit",
                  "projectName": "webkit",
                  "results": [
                    {
                      "workerIndex": 8,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 9,
                      "error": {
                        "message": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝",
                        "stack": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝"
                      },
                      "errors": [
                        {
                          "message": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No network errors\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:52:09.040Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-1f08bff9df919d288ae6",
              "file": "auth.spec.ts",
              "line": 293,
              "column": 3
            },
            {
              "title": "should redirect to login when accessing protected route without auth",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "webkit",
                  "projectName": "webkit",
                  "results": [
                    {
                      "workerIndex": 9,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 5,
                      "error": {
                        "message": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝",
                        "stack": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝"
                      },
                      "errors": [
                        {
                          "message": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No network errors\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:52:09.935Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-21fd3dcd248dab5b8131",
              "file": "auth.spec.ts",
              "line": 373,
              "column": 3
            },
            {
              "title": "should persist authentication after page refresh",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "webkit",
                  "projectName": "webkit",
                  "results": [
                    {
                      "workerIndex": 10,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 7,
                      "error": {
                        "message": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝",
                        "stack": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝"
                      },
                      "errors": [
                        {
                          "message": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No network errors\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:52:10.798Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-b650fa26a32d2a037a5a",
              "file": "auth.spec.ts",
              "line": 395,
              "column": 3
            },
            {
              "title": "should validate login form fields",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "webkit",
                  "projectName": "webkit",
                  "results": [
                    {
                      "workerIndex": 11,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 5,
                      "error": {
                        "message": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝",
                        "stack": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝"
                      },
                      "errors": [
                        {
                          "message": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No network errors\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:52:11.755Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-5ee828237b6b2f781ea3",
              "file": "auth.spec.ts",
              "line": 452,
              "column": 3
            },
            {
              "title": "should show error when passwords do not match during registration",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "webkit",
                  "projectName": "webkit",
                  "results": [
                    {
                      "workerIndex": 12,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 3,
                      "error": {
                        "message": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝",
                        "stack": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝"
                      },
                      "errors": [
                        {
                          "message": "Error: browserType.launch: \n╔══════════════════════════════════════════════════════╗\n║ Host system is missing dependencies to run browsers. ║\n║ Please install them with the following command:      ║\n║                                                      ║\n║     sudo npx playwright install-deps                 ║\n║                                                      ║\n║ Alternatively, use apt:                              ║\n║     sudo apt-get install libicu74\\                   ║\n║         libjpeg-turbo8\\                              ║\n║         gstreamer1.0-libav                           ║\n║                                                      ║\n║ <3 Playwright Team                                   ║\n╚══════════════════════════════════════════════════════╝"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No network errors\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:52:12.602Z",
                      "annotations": [],
                      "attachments": []
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-4c0ea2b25148c5c9623e",
              "file": "auth.spec.ts",
              "line": 509,
              "column": 3
            },
            {
              "title": "should login successfully with valid credentials",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "msedge",
                  "projectName": "msedge",
                  "results": [
                    {
                      "workerIndex": 13,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 229,
                      "error": {
                        "message": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"load\"\u001b[22m\n",
                        "stack": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"load\"\u001b[22m\n\n    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:44:16",
                        "location": {
                          "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                          "column": 16,
                          "line": 44
                        },
                        "snippet": "\u001b[0m \u001b[90m 42 |\u001b[39m     console\u001b[33m.\u001b[39mlog(\u001b[32m'🧪 [AUTH TEST] Running: Login with valid credentials'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 43 |\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 44 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/login`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m    |\u001b[39m                \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 45 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mwaitForLoadState(\u001b[32m'domcontentloaded'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 46 |\u001b[39m\n \u001b[90m 47 |\u001b[39m     \u001b[90m// Attendre que le formulaire soit prêt (premier test peut être plus lent)\u001b[39m\u001b[0m"
                      },
                      "errors": [
                        {
                          "location": {
                            "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                            "column": 16,
                            "line": 44
                          },
                          "message": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"load\"\u001b[22m\n\n\n\u001b[0m \u001b[90m 42 |\u001b[39m     console\u001b[33m.\u001b[39mlog(\u001b[32m'🧪 [AUTH TEST] Running: Login with valid credentials'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 43 |\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 44 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/login`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m    |\u001b[39m                \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 45 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mwaitForLoadState(\u001b[32m'domcontentloaded'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 46 |\u001b[39m\n \u001b[90m 47 |\u001b[39m     \u001b[90m// Attendre que le formulaire soit prêt (premier test peut être plus lent)\u001b[39m\u001b[0m\n\u001b[2m    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:44:16\u001b[22m"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Login with valid credentials\n"
                        },
                        {
                          "text": "🔴 [REQUEST FAILED] GET http://localhost:5173/login: net::ERR_CONNECTION_REFUSED\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Network errors (1):\n"
                        },
                        {
                          "text": "  - GET http://localhost:5173/login: 0\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:52:13.560Z",
                      "annotations": [],
                      "attachments": [
                        {
                          "name": "screenshot",
                          "contentType": "image/png",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-74377-ully-with-valid-credentials-msedge/test-failed-1.png"
                        },
                        {
                          "name": "video",
                          "contentType": "video/webm",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-74377-ully-with-valid-credentials-msedge/video.webm"
                        }
                      ],
                      "errorLocation": {
                        "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                        "column": 16,
                        "line": 44
                      }
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-6752a9a2e7a05cd11902",
              "file": "auth.spec.ts",
              "line": 41,
              "column": 3
            },
            {
              "title": "should show error with invalid credentials",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "msedge",
                  "projectName": "msedge",
                  "results": [
                    {
                      "workerIndex": 14,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 216,
                      "error": {
                        "message": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"load\"\u001b[22m\n",
                        "stack": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"load\"\u001b[22m\n\n    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:110:16",
                        "location": {
                          "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                          "column": 16,
                          "line": 110
                        },
                        "snippet": "\u001b[0m \u001b[90m 108 |\u001b[39m     console\u001b[33m.\u001b[39mlog(\u001b[32m'🧪 [AUTH TEST] Running: Login with invalid credentials'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 109 |\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 110 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/login`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m     |\u001b[39m                \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 111 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mwaitForLoadState(\u001b[32m'domcontentloaded'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 112 |\u001b[39m\n \u001b[90m 113 |\u001b[39m     \u001b[90m// Remplir avec des credentials invalides\u001b[39m\u001b[0m"
                      },
                      "errors": [
                        {
                          "location": {
                            "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                            "column": 16,
                            "line": 110
                          },
                          "message": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"load\"\u001b[22m\n\n\n\u001b[0m \u001b[90m 108 |\u001b[39m     console\u001b[33m.\u001b[39mlog(\u001b[32m'🧪 [AUTH TEST] Running: Login with invalid credentials'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 109 |\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 110 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/login`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m     |\u001b[39m                \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 111 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mwaitForLoadState(\u001b[32m'domcontentloaded'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 112 |\u001b[39m\n \u001b[90m 113 |\u001b[39m     \u001b[90m// Remplir avec des credentials invalides\u001b[39m\u001b[0m\n\u001b[2m    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:110:16\u001b[22m"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Login with invalid credentials\n"
                        },
                        {
                          "text": "🔴 [REQUEST FAILED] GET http://localhost:5173/login: net::ERR_CONNECTION_REFUSED\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Network errors (1):\n"
                        },
                        {
                          "text": "  - GET http://localhost:5173/login: 0\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:52:14.545Z",
                      "annotations": [],
                      "attachments": [
                        {
                          "name": "screenshot",
                          "contentType": "image/png",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-22fb7-or-with-invalid-credentials-msedge/test-failed-1.png"
                        },
                        {
                          "name": "video",
                          "contentType": "video/webm",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-22fb7-or-with-invalid-credentials-msedge/video.webm"
                        }
                      ],
                      "errorLocation": {
                        "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                        "column": 16,
                        "line": 110
                      }
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-59c9cf8302a5a962929c",
              "file": "auth.spec.ts",
              "line": 107,
              "column": 3
            },
            {
              "title": "should register a new user successfully",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "msedge",
                  "projectName": "msedge",
                  "results": [
                    {
                      "workerIndex": 15,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 225,
                      "error": {
                        "message": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/register\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/register\", waiting until \"load\"\u001b[22m\n",
                        "stack": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/register\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/register\", waiting until \"load\"\u001b[22m\n\n    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:137:16",
                        "location": {
                          "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                          "column": 16,
                          "line": 137
                        },
                        "snippet": "\u001b[0m \u001b[90m 135 |\u001b[39m     console\u001b[33m.\u001b[39mlog(\u001b[32m'🧪 [AUTH TEST] Running: User registration'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 136 |\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 137 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/register`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m     |\u001b[39m                \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 138 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mwaitForLoadState(\u001b[32m'domcontentloaded'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 139 |\u001b[39m\n \u001b[90m 140 |\u001b[39m     \u001b[90m// Attendre que la page soit complètement chargée\u001b[39m\u001b[0m"
                      },
                      "errors": [
                        {
                          "location": {
                            "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                            "column": 16,
                            "line": 137
                          },
                          "message": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/register\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/register\", waiting until \"load\"\u001b[22m\n\n\n\u001b[0m \u001b[90m 135 |\u001b[39m     console\u001b[33m.\u001b[39mlog(\u001b[32m'🧪 [AUTH TEST] Running: User registration'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 136 |\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 137 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/register`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m     |\u001b[39m                \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 138 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mwaitForLoadState(\u001b[32m'domcontentloaded'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 139 |\u001b[39m\n \u001b[90m 140 |\u001b[39m     \u001b[90m// Attendre que la page soit complètement chargée\u001b[39m\u001b[0m\n\u001b[2m    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:137:16\u001b[22m"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: User registration\n"
                        },
                        {
                          "text": "🔴 [REQUEST FAILED] GET http://localhost:5173/register: net::ERR_CONNECTION_REFUSED\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Network errors (1):\n"
                        },
                        {
                          "text": "  - GET http://localhost:5173/register: 0\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:52:15.612Z",
                      "annotations": [],
                      "attachments": [
                        {
                          "name": "screenshot",
                          "contentType": "image/png",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-53dd2-ter-a-new-user-successfully-msedge/test-failed-1.png"
                        },
                        {
                          "name": "video",
                          "contentType": "video/webm",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-53dd2-ter-a-new-user-successfully-msedge/video.webm"
                        }
                      ],
                      "errorLocation": {
                        "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                        "column": 16,
                        "line": 137
                      }
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-89d90a66686f781c5e5b",
              "file": "auth.spec.ts",
              "line": 134,
              "column": 3
            },
            {
              "title": "should show error when registering with existing email",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "msedge",
                  "projectName": "msedge",
                  "results": [
                    {
                      "workerIndex": 16,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 208,
                      "error": {
                        "message": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/register\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/register\", waiting until \"load\"\u001b[22m\n",
                        "stack": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/register\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/register\", waiting until \"load\"\u001b[22m\n\n    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:234:16",
                        "location": {
                          "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                          "column": 16,
                          "line": 234
                        },
                        "snippet": "\u001b[0m \u001b[90m 232 |\u001b[39m     console\u001b[33m.\u001b[39mlog(\u001b[32m'🧪 [AUTH TEST] Running: Registration with existing email'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 233 |\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 234 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/register`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m     |\u001b[39m                \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 235 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mwaitForLoadState(\u001b[32m'domcontentloaded'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 236 |\u001b[39m\n \u001b[90m 237 |\u001b[39m     \u001b[90m// Attendre que la page soit complètement chargée\u001b[39m\u001b[0m"
                      },
                      "errors": [
                        {
                          "location": {
                            "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                            "column": 16,
                            "line": 234
                          },
                          "message": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/register\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/register\", waiting until \"load\"\u001b[22m\n\n\n\u001b[0m \u001b[90m 232 |\u001b[39m     console\u001b[33m.\u001b[39mlog(\u001b[32m'🧪 [AUTH TEST] Running: Registration with existing email'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 233 |\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 234 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/register`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m     |\u001b[39m                \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 235 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mwaitForLoadState(\u001b[32m'domcontentloaded'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 236 |\u001b[39m\n \u001b[90m 237 |\u001b[39m     \u001b[90m// Attendre que la page soit complètement chargée\u001b[39m\u001b[0m\n\u001b[2m    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:234:16\u001b[22m"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Registration with existing email\n"
                        },
                        {
                          "text": "🔴 [REQUEST FAILED] GET http://localhost:5173/register: net::ERR_CONNECTION_REFUSED\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Network errors (1):\n"
                        },
                        {
                          "text": "  - GET http://localhost:5173/register: 0\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:52:16.683Z",
                      "annotations": [],
                      "attachments": [
                        {
                          "name": "screenshot",
                          "contentType": "image/png",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-3c58b-stering-with-existing-email-msedge/test-failed-1.png"
                        },
                        {
                          "name": "video",
                          "contentType": "video/webm",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-3c58b-stering-with-existing-email-msedge/video.webm"
                        }
                      ],
                      "errorLocation": {
                        "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                        "column": 16,
                        "line": 234
                      }
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-46e52fdc699a850c1641",
              "file": "auth.spec.ts",
              "line": 231,
              "column": 3
            },
            {
              "title": "should logout successfully",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "msedge",
                  "projectName": "msedge",
                  "results": [
                    {
                      "workerIndex": 17,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 2776,
                      "error": {
                        "message": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\u001b[22m\n",
                        "stack": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\u001b[22m\n\n    at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:174:18)\n    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:297:5",
                        "location": {
                          "file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
                          "column": 18,
                          "line": 174
                        },
                        "snippet": "\u001b[90m   at \u001b[39mutils/test-helpers.ts:174\n\n\u001b[0m \u001b[90m 172 |\u001b[39m   \u001b[36mwhile\u001b[39m (retries \u001b[33m>\u001b[39m \u001b[35m0\u001b[39m) {\n \u001b[90m 173 |\u001b[39m     \u001b[36mtry\u001b[39m {\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 174 |\u001b[39m       \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/login`\u001b[39m\u001b[33m,\u001b[39m {\n \u001b[90m     |\u001b[39m                  \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 175 |\u001b[39m         waitUntil\u001b[33m:\u001b[39m \u001b[32m'domcontentloaded'\u001b[39m\u001b[33m,\u001b[39m\n \u001b[90m 176 |\u001b[39m         timeout\u001b[33m:\u001b[39m \u001b[33mTEST_CONFIG\u001b[39m\u001b[33m.\u001b[39m\u001b[33mDEFAULT_TIMEOUT\u001b[39m\u001b[33m,\u001b[39m\n \u001b[90m 177 |\u001b[39m       })\u001b[33m;\u001b[39m\u001b[0m"
                      },
                      "errors": [
                        {
                          "location": {
                            "file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
                            "column": 18,
                            "line": 174
                          },
                          "message": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\u001b[22m\n\n\n\u001b[90m   at \u001b[39mutils/test-helpers.ts:174\n\n\u001b[0m \u001b[90m 172 |\u001b[39m   \u001b[36mwhile\u001b[39m (retries \u001b[33m>\u001b[39m \u001b[35m0\u001b[39m) {\n \u001b[90m 173 |\u001b[39m     \u001b[36mtry\u001b[39m {\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 174 |\u001b[39m       \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/login`\u001b[39m\u001b[33m,\u001b[39m {\n \u001b[90m     |\u001b[39m                  \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 175 |\u001b[39m         waitUntil\u001b[33m:\u001b[39m \u001b[32m'domcontentloaded'\u001b[39m\u001b[33m,\u001b[39m\n \u001b[90m 176 |\u001b[39m         timeout\u001b[33m:\u001b[39m \u001b[33mTEST_CONFIG\u001b[39m\u001b[33m.\u001b[39m\u001b[33mDEFAULT_TIMEOUT\u001b[39m\u001b[33m,\u001b[39m\n \u001b[90m 177 |\u001b[39m       })\u001b[33m;\u001b[39m\u001b[0m\n\u001b[2m    at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:174:18)\u001b[22m\n\u001b[2m    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:297:5\u001b[22m"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Logout\n"
                        },
                        {
                          "text": "🔐 [LOGIN] Attempting authentication as e2e@test.com...\n"
                        },
                        {
                          "text": "⏳ [LOGIN] Waiting 500ms before login (1768081937863ms since last login)...\n"
                        },
                        {
                          "text": "🔴 [REQUEST FAILED] GET http://localhost:5173/login: net::ERR_CONNECTION_REFUSED\n"
                        },
                        {
                          "text": "🔴 [REQUEST FAILED] GET http://localhost:5173/login: net::ERR_CONNECTION_REFUSED\n"
                        },
                        {
                          "text": "🔴 [REQUEST FAILED] GET http://localhost:5173/login: net::ERR_CONNECTION_REFUSED\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Network errors (3):\n"
                        },
                        {
                          "text": "  - GET http://localhost:5173/login: 0\n"
                        },
                        {
                          "text": "  - GET http://localhost:5173/login: 0\n"
                        },
                        {
                          "text": "  - GET http://localhost:5173/login: 0\n"
                        }
                      ],
                      "stderr": [
                        {
                          "text": "⚠️ [LOGIN] Navigation failed (retries left: 2): page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\u001b[22m\n\n    at loginAsUser \u001b[90m(/home/senke/git/talas/veza/apps/web/\u001b[39me2e/utils/test-helpers.ts:174:18\u001b[90m)\u001b[39m\n    at \u001b[90m/home/senke/git/talas/veza/apps/web/\u001b[39me2e/auth.spec.ts:297:5 {\n  name: \u001b[32m'Error'\u001b[39m,\n  [\u001b[32mSymbol(step)\u001b[39m]: {\n    location: {\n      file: \u001b[32m'/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts'\u001b[39m,\n      line: \u001b[33m174\u001b[39m,\n      column: \u001b[33m18\u001b[39m,\n      function: \u001b[32m'loginAsUser'\u001b[39m\n    },\n    category: \u001b[32m'pw:api'\u001b[39m,\n    title: \u001b[32m'Navigate to \"/login\"'\u001b[39m,\n    apiName: \u001b[32m'page.goto'\u001b[39m,\n    params: {\n      url: \u001b[32m'http://localhost:5173/login'\u001b[39m,\n      waitUntil: \u001b[32m'domcontentloaded'\u001b[39m,\n      timeout: \u001b[33m30000\u001b[39m\n    },\n    group: \u001b[90mundefined\u001b[39m,\n    stepId: \u001b[32m'pw:api@36'\u001b[39m,\n    boxedStack: \u001b[90mundefined\u001b[39m,\n    steps: [],\n    attachmentIndices: [],\n    info: TestStepInfoImpl {\n      annotations: [],\n      _testInfo: \u001b[36m[TestInfoImpl]\u001b[39m,\n      _stepId: \u001b[32m'pw:api@36'\u001b[39m,\n      _title: \u001b[32m'Navigate to \"/login\"'\u001b[39m,\n      _parentStep: \u001b[90mundefined\u001b[39m,\n      skip: \u001b[36m[Function (anonymous)]\u001b[39m\n    },\n    complete: \u001b[36m[Function: complete]\u001b[39m,\n    endWallTime: \u001b[33m1768081938386\u001b[39m,\n    error: {\n      message: \u001b[32m'Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\\n'\u001b[39m +\n        \u001b[32m'Call log:\\n'\u001b[39m +\n        \u001b[32m'\\x1B[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\\x1B[22m\\n'\u001b[39m,\n      stack: \u001b[32m'Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\\n'\u001b[39m +\n        \u001b[32m'Call log:\\n'\u001b[39m +\n        \u001b[32m'\\x1B[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\\x1B[22m\\n'\u001b[39m +\n        \u001b[32m'\\n'\u001b[39m +\n        \u001b[32m'    at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:174:18)\\n'\u001b[39m +\n        \u001b[32m'    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:297:5'\u001b[39m,\n      cause: \u001b[90mundefined\u001b[39m\n    }\n  }\n}\n"
                        },
                        {
                          "text": "⚠️ [LOGIN] Navigation failed (retries left: 1): page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\u001b[22m\n\n    at loginAsUser \u001b[90m(/home/senke/git/talas/veza/apps/web/\u001b[39me2e/utils/test-helpers.ts:174:18\u001b[90m)\u001b[39m\n    at \u001b[90m/home/senke/git/talas/veza/apps/web/\u001b[39me2e/auth.spec.ts:297:5 {\n  name: \u001b[32m'Error'\u001b[39m,\n  [\u001b[32mSymbol(step)\u001b[39m]: {\n    location: {\n      file: \u001b[32m'/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts'\u001b[39m,\n      line: \u001b[33m174\u001b[39m,\n      column: \u001b[33m18\u001b[39m,\n      function: \u001b[32m'loginAsUser'\u001b[39m\n    },\n    category: \u001b[32m'pw:api'\u001b[39m,\n    title: \u001b[32m'Navigate to \"/login\"'\u001b[39m,\n    apiName: \u001b[32m'page.goto'\u001b[39m,\n    params: {\n      url: \u001b[32m'http://localhost:5173/login'\u001b[39m,\n      waitUntil: \u001b[32m'domcontentloaded'\u001b[39m,\n      timeout: \u001b[33m30000\u001b[39m\n    },\n    group: \u001b[90mundefined\u001b[39m,\n    stepId: \u001b[32m'pw:api@38'\u001b[39m,\n    boxedStack: \u001b[90mundefined\u001b[39m,\n    steps: [],\n    attachmentIndices: [],\n    info: TestStepInfoImpl {\n      annotations: [],\n      _testInfo: \u001b[36m[TestInfoImpl]\u001b[39m,\n      _stepId: \u001b[32m'pw:api@38'\u001b[39m,\n      _title: \u001b[32m'Navigate to \"/login\"'\u001b[39m,\n      _parentStep: \u001b[90mundefined\u001b[39m,\n      skip: \u001b[36m[Function (anonymous)]\u001b[39m\n    },\n    complete: \u001b[36m[Function: complete]\u001b[39m,\n    endWallTime: \u001b[33m1768081939409\u001b[39m,\n    error: {\n      message: \u001b[32m'Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\\n'\u001b[39m +\n        \u001b[32m'Call log:\\n'\u001b[39m +\n        \u001b[32m'\\x1B[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\\x1B[22m\\n'\u001b[39m,\n      stack: \u001b[32m'Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\\n'\u001b[39m +\n        \u001b[32m'Call log:\\n'\u001b[39m +\n        \u001b[32m'\\x1B[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\\x1B[22m\\n'\u001b[39m +\n        \u001b[32m'\\n'\u001b[39m +\n        \u001b[32m'    at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:174:18)\\n'\u001b[39m +\n        \u001b[32m'    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:297:5'\u001b[39m,\n      cause: \u001b[90mundefined\u001b[39m\n    }\n  }\n}\n"
                        },
                        {
                          "text": "⚠️ [LOGIN] Navigation failed (retries left: 0): page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\u001b[22m\n\n    at loginAsUser \u001b[90m(/home/senke/git/talas/veza/apps/web/\u001b[39me2e/utils/test-helpers.ts:174:18\u001b[90m)\u001b[39m\n    at \u001b[90m/home/senke/git/talas/veza/apps/web/\u001b[39me2e/auth.spec.ts:297:5 {\n  name: \u001b[32m'Error'\u001b[39m,\n  [\u001b[32mSymbol(step)\u001b[39m]: {\n    location: {\n      file: \u001b[32m'/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts'\u001b[39m,\n      line: \u001b[33m174\u001b[39m,\n      column: \u001b[33m18\u001b[39m,\n      function: \u001b[32m'loginAsUser'\u001b[39m\n    },\n    category: \u001b[32m'pw:api'\u001b[39m,\n    title: \u001b[32m'Navigate to \"/login\"'\u001b[39m,\n    apiName: \u001b[32m'page.goto'\u001b[39m,\n    params: {\n      url: \u001b[32m'http://localhost:5173/login'\u001b[39m,\n      waitUntil: \u001b[32m'domcontentloaded'\u001b[39m,\n      timeout: \u001b[33m30000\u001b[39m\n    },\n    group: \u001b[90mundefined\u001b[39m,\n    stepId: \u001b[32m'pw:api@40'\u001b[39m,\n    boxedStack: \u001b[90mundefined\u001b[39m,\n    steps: [],\n    attachmentIndices: [],\n    info: TestStepInfoImpl {\n      annotations: [],\n      _testInfo: \u001b[36m[TestInfoImpl]\u001b[39m,\n      _stepId: \u001b[32m'pw:api@40'\u001b[39m,\n      _title: \u001b[32m'Navigate to \"/login\"'\u001b[39m,\n      _parentStep: \u001b[90mundefined\u001b[39m,\n      skip: \u001b[36m[Function (anonymous)]\u001b[39m\n    },\n    complete: \u001b[36m[Function: complete]\u001b[39m,\n    endWallTime: \u001b[33m1768081940419\u001b[39m,\n    error: {\n      message: \u001b[32m'Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\\n'\u001b[39m +\n        \u001b[32m'Call log:\\n'\u001b[39m +\n        \u001b[32m'\\x1B[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\\x1B[22m\\n'\u001b[39m,\n      stack: \u001b[32m'Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\\n'\u001b[39m +\n        \u001b[32m'Call log:\\n'\u001b[39m +\n        \u001b[32m'\\x1B[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\\x1B[22m\\n'\u001b[39m +\n        \u001b[32m'\\n'\u001b[39m +\n        \u001b[32m'    at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:174:18)\\n'\u001b[39m +\n        \u001b[32m'    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:297:5'\u001b[39m,\n      cause: \u001b[90mundefined\u001b[39m\n    }\n  }\n}\n"
                        }
                      ],
                      "retry": 0,
                      "startTime": "2026-01-10T21:52:17.741Z",
                      "annotations": [],
                      "attachments": [
                        {
                          "name": "screenshot",
                          "contentType": "image/png",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-should-logout-successfully-msedge/test-failed-1.png"
                        },
                        {
                          "name": "video",
                          "contentType": "video/webm",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-should-logout-successfully-msedge/video.webm"
                        }
                      ],
                      "errorLocation": {
                        "file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
                        "column": 18,
                        "line": 174
                      }
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-3df7d64e9abaa55ead40",
              "file": "auth.spec.ts",
              "line": 293,
              "column": 3
            },
            {
              "title": "should redirect to login when accessing protected route without auth",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "msedge",
                  "projectName": "msedge",
                  "results": [
                    {
                      "workerIndex": 18,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 230,
                      "error": {
                        "message": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"load\"\u001b[22m\n",
                        "stack": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"load\"\u001b[22m\n\n    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:377:16",
                        "location": {
                          "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                          "column": 16,
                          "line": 377
                        },
                        "snippet": "\u001b[0m \u001b[90m 375 |\u001b[39m\n \u001b[90m 376 |\u001b[39m     \u001b[90m// S'assurer qu'il n'y a pas de token dans le localStorage\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 377 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/login`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m     |\u001b[39m                \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 378 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mevaluate(() \u001b[33m=>\u001b[39m localStorage\u001b[33m.\u001b[39mclear())\u001b[33m;\u001b[39m\n \u001b[90m 379 |\u001b[39m\n \u001b[90m 380 |\u001b[39m     \u001b[90m// Tenter d'accéder à une route protégée\u001b[39m\u001b[0m"
                      },
                      "errors": [
                        {
                          "location": {
                            "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                            "column": 16,
                            "line": 377
                          },
                          "message": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"load\"\u001b[22m\n\n\n\u001b[0m \u001b[90m 375 |\u001b[39m\n \u001b[90m 376 |\u001b[39m     \u001b[90m// S'assurer qu'il n'y a pas de token dans le localStorage\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 377 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/login`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m     |\u001b[39m                \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 378 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mevaluate(() \u001b[33m=>\u001b[39m localStorage\u001b[33m.\u001b[39mclear())\u001b[33m;\u001b[39m\n \u001b[90m 379 |\u001b[39m\n \u001b[90m 380 |\u001b[39m     \u001b[90m// Tenter d'accéder à une route protégée\u001b[39m\u001b[0m\n\u001b[2m    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:377:16\u001b[22m"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Route guard test\n"
                        },
                        {
                          "text": "🔴 [REQUEST FAILED] GET http://localhost:5173/login: net::ERR_CONNECTION_REFUSED\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Network errors (1):\n"
                        },
                        {
                          "text": "  - GET http://localhost:5173/login: 0\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:52:21.273Z",
                      "annotations": [],
                      "attachments": [
                        {
                          "name": "screenshot",
                          "contentType": "image/png",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-f8244-rotected-route-without-auth-msedge/test-failed-1.png"
                        },
                        {
                          "name": "video",
                          "contentType": "video/webm",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-f8244-rotected-route-without-auth-msedge/video.webm"
                        }
                      ],
                      "errorLocation": {
                        "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                        "column": 16,
                        "line": 377
                      }
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-c4b67bfd2f9f5e5089d5",
              "file": "auth.spec.ts",
              "line": 373,
              "column": 3
            },
            {
              "title": "should persist authentication after page refresh",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "msedge",
                  "projectName": "msedge",
                  "results": [
                    {
                      "workerIndex": 19,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 12734,
                      "error": {
                        "message": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\u001b[22m\n",
                        "stack": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\u001b[22m\n\n    at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:174:18)\n    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:403:5",
                        "location": {
                          "file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
                          "column": 18,
                          "line": 174
                        },
                        "snippet": "\u001b[90m   at \u001b[39mutils/test-helpers.ts:174\n\n\u001b[0m \u001b[90m 172 |\u001b[39m   \u001b[36mwhile\u001b[39m (retries \u001b[33m>\u001b[39m \u001b[35m0\u001b[39m) {\n \u001b[90m 173 |\u001b[39m     \u001b[36mtry\u001b[39m {\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 174 |\u001b[39m       \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/login`\u001b[39m\u001b[33m,\u001b[39m {\n \u001b[90m     |\u001b[39m                  \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 175 |\u001b[39m         waitUntil\u001b[33m:\u001b[39m \u001b[32m'domcontentloaded'\u001b[39m\u001b[33m,\u001b[39m\n \u001b[90m 176 |\u001b[39m         timeout\u001b[33m:\u001b[39m \u001b[33mTEST_CONFIG\u001b[39m\u001b[33m.\u001b[39m\u001b[33mDEFAULT_TIMEOUT\u001b[39m\u001b[33m,\u001b[39m\n \u001b[90m 177 |\u001b[39m       })\u001b[33m;\u001b[39m\u001b[0m"
                      },
                      "errors": [
                        {
                          "location": {
                            "file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
                            "column": 18,
                            "line": 174
                          },
                          "message": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\u001b[22m\n\n\n\u001b[90m   at \u001b[39mutils/test-helpers.ts:174\n\n\u001b[0m \u001b[90m 172 |\u001b[39m   \u001b[36mwhile\u001b[39m (retries \u001b[33m>\u001b[39m \u001b[35m0\u001b[39m) {\n \u001b[90m 173 |\u001b[39m     \u001b[36mtry\u001b[39m {\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 174 |\u001b[39m       \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/login`\u001b[39m\u001b[33m,\u001b[39m {\n \u001b[90m     |\u001b[39m                  \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 175 |\u001b[39m         waitUntil\u001b[33m:\u001b[39m \u001b[32m'domcontentloaded'\u001b[39m\u001b[33m,\u001b[39m\n \u001b[90m 176 |\u001b[39m         timeout\u001b[33m:\u001b[39m \u001b[33mTEST_CONFIG\u001b[39m\u001b[33m.\u001b[39m\u001b[33mDEFAULT_TIMEOUT\u001b[39m\u001b[33m,\u001b[39m\n \u001b[90m 177 |\u001b[39m       })\u001b[33m;\u001b[39m\u001b[0m\n\u001b[2m    at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:174:18)\u001b[22m\n\u001b[2m    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:403:5\u001b[22m"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Auth persistence test\n"
                        },
                        {
                          "text": "🔐 [LOGIN] Attempting authentication as e2e@test.com...\n"
                        },
                        {
                          "text": "⏳ [LOGIN] Waiting 500ms before login (1768081952393ms since last login)...\n"
                        },
                        {
                          "text": "🔴 [REQUEST FAILED] GET http://localhost:5173/login: net::ERR_CONNECTION_REFUSED\n"
                        },
                        {
                          "text": "🔴 [REQUEST FAILED] GET http://localhost:5173/login: net::ERR_CONNECTION_REFUSED\n"
                        },
                        {
                          "text": "🔴 [REQUEST FAILED] GET http://localhost:5173/login: net::ERR_CONNECTION_REFUSED\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Network errors (3):\n"
                        },
                        {
                          "text": "  - GET http://localhost:5173/login: 0\n"
                        },
                        {
                          "text": "  - GET http://localhost:5173/login: 0\n"
                        },
                        {
                          "text": "  - GET http://localhost:5173/login: 0\n"
                        }
                      ],
                      "stderr": [
                        {
                          "text": "⚠️ [LOGIN] Navigation failed (retries left: 2): page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\u001b[22m\n\n    at loginAsUser \u001b[90m(/home/senke/git/talas/veza/apps/web/\u001b[39me2e/utils/test-helpers.ts:174:18\u001b[90m)\u001b[39m\n    at \u001b[90m/home/senke/git/talas/veza/apps/web/\u001b[39me2e/auth.spec.ts:403:5 {\n  name: \u001b[32m'Error'\u001b[39m,\n  [\u001b[32mSymbol(step)\u001b[39m]: {\n    location: {\n      file: \u001b[32m'/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts'\u001b[39m,\n      line: \u001b[33m174\u001b[39m,\n      column: \u001b[33m18\u001b[39m,\n      function: \u001b[32m'loginAsUser'\u001b[39m\n    },\n    category: \u001b[32m'pw:api'\u001b[39m,\n    title: \u001b[32m'Navigate to \"/login\"'\u001b[39m,\n    apiName: \u001b[32m'page.goto'\u001b[39m,\n    params: {\n      url: \u001b[32m'http://localhost:5173/login'\u001b[39m,\n      waitUntil: \u001b[32m'domcontentloaded'\u001b[39m,\n      timeout: \u001b[33m30000\u001b[39m\n    },\n    group: \u001b[90mundefined\u001b[39m,\n    stepId: \u001b[32m'pw:api@37'\u001b[39m,\n    boxedStack: \u001b[90mundefined\u001b[39m,\n    steps: [],\n    attachmentIndices: [],\n    info: TestStepInfoImpl {\n      annotations: [],\n      _testInfo: \u001b[36m[TestInfoImpl]\u001b[39m,\n      _stepId: \u001b[32m'pw:api@37'\u001b[39m,\n      _title: \u001b[32m'Navigate to \"/login\"'\u001b[39m,\n      _parentStep: \u001b[90mundefined\u001b[39m,\n      skip: \u001b[36m[Function (anonymous)]\u001b[39m\n    },\n    complete: \u001b[36m[Function: complete]\u001b[39m,\n    endWallTime: \u001b[33m1768081952903\u001b[39m,\n    error: {\n      message: \u001b[32m'Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\\n'\u001b[39m +\n        \u001b[32m'Call log:\\n'\u001b[39m +\n        \u001b[32m'\\x1B[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\\x1B[22m\\n'\u001b[39m,\n      stack: \u001b[32m'Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\\n'\u001b[39m +\n        \u001b[32m'Call log:\\n'\u001b[39m +\n        \u001b[32m'\\x1B[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\\x1B[22m\\n'\u001b[39m +\n        \u001b[32m'\\n'\u001b[39m +\n        \u001b[32m'    at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:174:18)\\n'\u001b[39m +\n        \u001b[32m'    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:403:5'\u001b[39m,\n      cause: \u001b[90mundefined\u001b[39m\n    }\n  }\n}\n"
                        },
                        {
                          "text": "⚠️ [LOGIN] Navigation failed (retries left: 1): page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\u001b[22m\n\n    at loginAsUser \u001b[90m(/home/senke/git/talas/veza/apps/web/\u001b[39me2e/utils/test-helpers.ts:174:18\u001b[90m)\u001b[39m\n    at \u001b[90m/home/senke/git/talas/veza/apps/web/\u001b[39me2e/auth.spec.ts:403:5 {\n  name: \u001b[32m'Error'\u001b[39m,\n  [\u001b[32mSymbol(step)\u001b[39m]: {\n    location: {\n      file: \u001b[32m'/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts'\u001b[39m,\n      line: \u001b[33m174\u001b[39m,\n      column: \u001b[33m18\u001b[39m,\n      function: \u001b[32m'loginAsUser'\u001b[39m\n    },\n    category: \u001b[32m'pw:api'\u001b[39m,\n    title: \u001b[32m'Navigate to \"/login\"'\u001b[39m,\n    apiName: \u001b[32m'page.goto'\u001b[39m,\n    params: {\n      url: \u001b[32m'http://localhost:5173/login'\u001b[39m,\n      waitUntil: \u001b[32m'domcontentloaded'\u001b[39m,\n      timeout: \u001b[33m30000\u001b[39m\n    },\n    group: \u001b[90mundefined\u001b[39m,\n    stepId: \u001b[32m'pw:api@39'\u001b[39m,\n    boxedStack: \u001b[90mundefined\u001b[39m,\n    steps: [],\n    attachmentIndices: [],\n    info: TestStepInfoImpl {\n      annotations: [],\n      _testInfo: \u001b[36m[TestInfoImpl]\u001b[39m,\n      _stepId: \u001b[32m'pw:api@39'\u001b[39m,\n      _title: \u001b[32m'Navigate to \"/login\"'\u001b[39m,\n      _parentStep: \u001b[90mundefined\u001b[39m,\n      skip: \u001b[36m[Function (anonymous)]\u001b[39m\n    },\n    complete: \u001b[36m[Function: complete]\u001b[39m,\n    endWallTime: \u001b[33m1768081953920\u001b[39m,\n    error: {\n      message: \u001b[32m'Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\\n'\u001b[39m +\n        \u001b[32m'Call log:\\n'\u001b[39m +\n        \u001b[32m'\\x1B[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\\x1B[22m\\n'\u001b[39m,\n      stack: \u001b[32m'Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\\n'\u001b[39m +\n        \u001b[32m'Call log:\\n'\u001b[39m +\n        \u001b[32m'\\x1B[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\\x1B[22m\\n'\u001b[39m +\n        \u001b[32m'\\n'\u001b[39m +\n        \u001b[32m'    at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:174:18)\\n'\u001b[39m +\n        \u001b[32m'    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:403:5'\u001b[39m,\n      cause: \u001b[90mundefined\u001b[39m\n    }\n  }\n}\n"
                        },
                        {
                          "text": "⚠️ [LOGIN] Navigation failed (retries left: 0): page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\u001b[22m\n\n    at loginAsUser \u001b[90m(/home/senke/git/talas/veza/apps/web/\u001b[39me2e/utils/test-helpers.ts:174:18\u001b[90m)\u001b[39m\n    at \u001b[90m/home/senke/git/talas/veza/apps/web/\u001b[39me2e/auth.spec.ts:403:5 {\n  name: \u001b[32m'Error'\u001b[39m,\n  [\u001b[32mSymbol(step)\u001b[39m]: {\n    location: {\n      file: \u001b[32m'/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts'\u001b[39m,\n      line: \u001b[33m174\u001b[39m,\n      column: \u001b[33m18\u001b[39m,\n      function: \u001b[32m'loginAsUser'\u001b[39m\n    },\n    category: \u001b[32m'pw:api'\u001b[39m,\n    title: \u001b[32m'Navigate to \"/login\"'\u001b[39m,\n    apiName: \u001b[32m'page.goto'\u001b[39m,\n    params: {\n      url: \u001b[32m'http://localhost:5173/login'\u001b[39m,\n      waitUntil: \u001b[32m'domcontentloaded'\u001b[39m,\n      timeout: \u001b[33m30000\u001b[39m\n    },\n    group: \u001b[90mundefined\u001b[39m,\n    stepId: \u001b[32m'pw:api@41'\u001b[39m,\n    boxedStack: \u001b[90mundefined\u001b[39m,\n    steps: [],\n    attachmentIndices: [],\n    info: TestStepInfoImpl {\n      annotations: [],\n      _testInfo: \u001b[36m[TestInfoImpl]\u001b[39m,\n      _stepId: \u001b[32m'pw:api@41'\u001b[39m,\n      _title: \u001b[32m'Navigate to \"/login\"'\u001b[39m,\n      _parentStep: \u001b[90mundefined\u001b[39m,\n      skip: \u001b[36m[Function (anonymous)]\u001b[39m\n    },\n    complete: \u001b[36m[Function: complete]\u001b[39m,\n    endWallTime: \u001b[33m1768081954928\u001b[39m,\n    error: {\n      message: \u001b[32m'Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\\n'\u001b[39m +\n        \u001b[32m'Call log:\\n'\u001b[39m +\n        \u001b[32m'\\x1B[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\\x1B[22m\\n'\u001b[39m,\n      stack: \u001b[32m'Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\\n'\u001b[39m +\n        \u001b[32m'Call log:\\n'\u001b[39m +\n        \u001b[32m'\\x1B[2m  - navigating to \"http://localhost:5173/login\", waiting until \"domcontentloaded\"\\x1B[22m\\n'\u001b[39m +\n        \u001b[32m'\\n'\u001b[39m +\n        \u001b[32m'    at loginAsUser (/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts:174:18)\\n'\u001b[39m +\n        \u001b[32m'    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:403:5'\u001b[39m,\n      cause: \u001b[90mundefined\u001b[39m\n    }\n  }\n}\n"
                        }
                      ],
                      "retry": 0,
                      "startTime": "2026-01-10T21:52:22.258Z",
                      "annotations": [],
                      "attachments": [
                        {
                          "name": "screenshot",
                          "contentType": "image/png",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-12d3c-tication-after-page-refresh-msedge/test-failed-1.png"
                        },
                        {
                          "name": "video",
                          "contentType": "video/webm",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-12d3c-tication-after-page-refresh-msedge/video.webm"
                        }
                      ],
                      "errorLocation": {
                        "file": "/home/senke/git/talas/veza/apps/web/e2e/utils/test-helpers.ts",
                        "column": 18,
                        "line": 174
                      }
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-28ee1ce0e854954aad61",
              "file": "auth.spec.ts",
              "line": 395,
              "column": 3
            },
            {
              "title": "should validate login form fields",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "msedge",
                  "projectName": "msedge",
                  "results": [
                    {
                      "workerIndex": 20,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 190,
                      "error": {
                        "message": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"load\"\u001b[22m\n",
                        "stack": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"load\"\u001b[22m\n\n    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:455:16",
                        "location": {
                          "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                          "column": 16,
                          "line": 455
                        },
                        "snippet": "\u001b[0m \u001b[90m 453 |\u001b[39m     console\u001b[33m.\u001b[39mlog(\u001b[32m'🧪 [AUTH TEST] Running: Login form validation'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 454 |\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 455 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/login`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m     |\u001b[39m                \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 456 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mwaitForLoadState(\u001b[32m'domcontentloaded'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 457 |\u001b[39m\n \u001b[90m 458 |\u001b[39m     \u001b[90m// Wait for form to be ready\u001b[39m\u001b[0m"
                      },
                      "errors": [
                        {
                          "location": {
                            "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                            "column": 16,
                            "line": 455
                          },
                          "message": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/login\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/login\", waiting until \"load\"\u001b[22m\n\n\n\u001b[0m \u001b[90m 453 |\u001b[39m     console\u001b[33m.\u001b[39mlog(\u001b[32m'🧪 [AUTH TEST] Running: Login form validation'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 454 |\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 455 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/login`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m     |\u001b[39m                \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 456 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mwaitForLoadState(\u001b[32m'domcontentloaded'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 457 |\u001b[39m\n \u001b[90m 458 |\u001b[39m     \u001b[90m// Wait for form to be ready\u001b[39m\u001b[0m\n\u001b[2m    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:455:16\u001b[22m"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Login form validation\n"
                        },
                        {
                          "text": "🔴 [REQUEST FAILED] GET http://localhost:5173/login: net::ERR_CONNECTION_REFUSED\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Network errors (1):\n"
                        },
                        {
                          "text": "  - GET http://localhost:5173/login: 0\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:52:35.693Z",
                      "annotations": [],
                      "attachments": [
                        {
                          "name": "screenshot",
                          "contentType": "image/png",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-should-validate-login-form-fields-msedge/test-failed-1.png"
                        },
                        {
                          "name": "video",
                          "contentType": "video/webm",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-should-validate-login-form-fields-msedge/video.webm"
                        }
                      ],
                      "errorLocation": {
                        "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                        "column": 16,
                        "line": 455
                      }
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-3aa083fdfc83657d8319",
              "file": "auth.spec.ts",
              "line": 452,
              "column": 3
            },
            {
              "title": "should show error when passwords do not match during registration",
              "ok": false,
              "tags": [],
              "tests": [
                {
                  "timeout": 60000,
                  "annotations": [],
                  "expectedStatus": "passed",
                  "projectId": "msedge",
                  "projectName": "msedge",
                  "results": [
                    {
                      "workerIndex": 21,
                      "parallelIndex": 0,
                      "status": "failed",
                      "duration": 222,
                      "error": {
                        "message": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/register\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/register\", waiting until \"load\"\u001b[22m\n",
                        "stack": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/register\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/register\", waiting until \"load\"\u001b[22m\n\n    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:512:16",
                        "location": {
                          "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                          "column": 16,
                          "line": 512
                        },
                        "snippet": "\u001b[0m \u001b[90m 510 |\u001b[39m     console\u001b[33m.\u001b[39mlog(\u001b[32m'🧪 [AUTH TEST] Running: Password mismatch validation'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 511 |\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 512 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/register`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m     |\u001b[39m                \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 513 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mwaitForLoadState(\u001b[32m'domcontentloaded'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 514 |\u001b[39m\n \u001b[90m 515 |\u001b[39m     \u001b[90m// Attendre que la page soit complètement chargée\u001b[39m\u001b[0m"
                      },
                      "errors": [
                        {
                          "location": {
                            "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                            "column": 16,
                            "line": 512
                          },
                          "message": "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:5173/register\nCall log:\n\u001b[2m  - navigating to \"http://localhost:5173/register\", waiting until \"load\"\u001b[22m\n\n\n\u001b[0m \u001b[90m 510 |\u001b[39m     console\u001b[33m.\u001b[39mlog(\u001b[32m'🧪 [AUTH TEST] Running: Password mismatch validation'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 511 |\u001b[39m\n\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 512 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mgoto(\u001b[32m`${TEST_CONFIG.FRONTEND_URL}/register`\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m     |\u001b[39m                \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\n \u001b[90m 513 |\u001b[39m     \u001b[36mawait\u001b[39m page\u001b[33m.\u001b[39mwaitForLoadState(\u001b[32m'domcontentloaded'\u001b[39m)\u001b[33m;\u001b[39m\n \u001b[90m 514 |\u001b[39m\n \u001b[90m 515 |\u001b[39m     \u001b[90m// Attendre que la page soit complètement chargée\u001b[39m\u001b[0m\n\u001b[2m    at /home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts:512:16\u001b[22m"
                        }
                      ],
                      "stdout": [
                        {
                          "text": "🧪 [AUTH TEST] Running: Password mismatch validation\n"
                        },
                        {
                          "text": "🔴 [REQUEST FAILED] GET http://localhost:5173/register: net::ERR_CONNECTION_REFUSED\n"
                        },
                        {
                          "text": "\n📊 [AUTH TEST] === Final Verifications ===\n"
                        },
                        {
                          "text": "✅ [AUTH TEST] No console errors\n"
                        },
                        {
                          "text": "🔴 [AUTH TEST] Network errors (1):\n"
                        },
                        {
                          "text": "  - GET http://localhost:5173/register: 0\n"
                        }
                      ],
                      "stderr": [],
                      "retry": 0,
                      "startTime": "2026-01-10T21:52:36.604Z",
                      "annotations": [],
                      "attachments": [
                        {
                          "name": "screenshot",
                          "contentType": "image/png",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-216c1-t-match-during-registration-msedge/test-failed-1.png"
                        },
                        {
                          "name": "video",
                          "contentType": "video/webm",
                          "path": "/home/senke/git/talas/veza/apps/web/test-results/auth-Authentication-Flow-s-216c1-t-match-during-registration-msedge/video.webm"
                        }
                      ],
                      "errorLocation": {
                        "file": "/home/senke/git/talas/veza/apps/web/e2e/auth.spec.ts",
                        "column": 16,
                        "line": 512
                      }
                    }
                  ],
                  "status": "unexpected"
                }
              ],
              "id": "d748ac400d08b85935ef-f68285534433ec8ebacd",
              "file": "auth.spec.ts",
              "line": 509,
              "column": 3
            }
          ]
        }
      ]
    }
  ],
  "errors": [],
  "stats": {
    "startTime": "2026-01-10T21:50:19.099Z",
    "duration": 137843.98500000002,
    "expected": 15,
    "skipped": 0,
    "unexpected": 21,
    "flaky": 0
  }
}