{
  "config": {
    "configFile": "playwright.config.ts",
    "rootDir": "./tests",
    "forbidOnly": true,
    "fullyParallel": true,
    "timeout": 30000,
    "workers": 4,
    "retries": 1,
    "reporter": [["json"], ["html"], ["list"]],
    "metadata": {
      "framework": "Playwright Automation Architecture",
      "author": "Kritan Shrestha (QA Automation Engineer)",
      "environment": "CI/CD Staging Gate",
      "targetUrl": "https://demo.quantum-enterprise.internal",
      "timestamp": "2026-09-25T05:30:00.000Z",
      "executionMode": "Parallel Sharded Workers (4 Shards)",
      "sanitized": true
    }
  },
  "stats": {
    "startTime": "2026-09-25T05:30:00.000Z",
    "duration": 18450,
    "expected": 38,
    "skipped": 0,
    "unexpected": 0,
    "flaky": 0
  },
  "suites": [
    {
      "title": "Site Navigation & Core Menu Suite",
      "file": "smoke/site-menu/site.spec.ts",
      "specs": [
        {
          "title": "Verify Site navigation renders core layout components",
          "ok": true,
          "duration": 482,
          "status": "expected",
          "tags": ["@smoke", "@core", "@navigation"],
          "assertions": 7,
          "steps": [
            "Intercept GET /api/v2/sites -> Status 200",
            "Assert Header Site selector dropdown visible",
            "Validate JWT StorageState session active",
            "Assert DOM contains valid site configuration card"
          ]
        },
        {
          "title": "Click New Site action and validate API payload contract",
          "ok": true,
          "duration": 612,
          "status": "expected",
          "tags": ["@regression", "@sites", "@api"],
          "assertions": 12,
          "steps": [
            "Trigger New Site modal trigger",
            "Fill schema-validated form data with randomized seed",
            "Intercept POST /api/v2/sites payload schema validation",
            "Assert Response status 201 Created and Toast notification rendered"
          ]
        }
      ]
    },
    {
      "title": "Enterprise Contacts & Grid Module",
      "file": "regression/contacts/contacts.add.spec.ts",
      "specs": [
        {
          "title": "Create new enterprise contact with dynamic role permissions",
          "ok": true,
          "duration": 540,
          "status": "expected",
          "tags": ["@contacts", "@crud", "@e2e"],
          "assertions": 9,
          "steps": [
            "Seed company prerequisite via API Client Layer (42ms)",
            "Navigate to Contacts Directory page object",
            "Fill randomized contact details (first, last, email, title)",
            "Click Submit and verify record appears in virtualized table"
          ]
        },
        {
          "title": "Server-side pagination and fuzzy search indexing",
          "ok": true,
          "duration": 395,
          "status": "expected",
          "tags": ["@search", "@pagination"],
          "assertions": 8,
          "steps": [
            "Type search query into debounce filter input",
            "Await network idle on /api/v2/contacts/query",
            "Verify table row count matches expected response headers"
          ]
        }
      ]
    },
    {
      "title": "Telemetry & Dashboard Analytics Gate",
      "file": "smoke/dashboard/dashboard.spec.ts",
      "specs": [
        {
          "title": "Dashboard widget metrics match REST telemetry endpoints",
          "ok": true,
          "duration": 420,
          "status": "expected",
          "tags": ["@dashboard", "@telemetry"],
          "assertions": 15,
          "steps": [
            "Parallel fetch /api/v2/metrics/summary",
            "Assert KPI cards render formatted numbers matching payload",
            "Assert Grafana telemetry health check returns 200 OK"
          ]
        }
      ]
    },
    {
      "title": "Financial Ledger & Invoicing Verification",
      "file": "regression/accounting/accounting.spec.ts",
      "specs": [
        {
          "title": "Generate PDF invoice and verify math decimal accuracy",
          "ok": true,
          "duration": 710,
          "status": "expected",
          "tags": ["@accounting", "@financial"],
          "assertions": 11,
          "steps": [
            "Inject authenticated financial controller role session",
            "Create line item with fractional tax rate",
            "Assert total calculation equals line item plus tax (2 decimal rounding)",
            "Download invoice buffer and assert MIME type application/pdf"
          ]
        }
      ]
    }
  ]
}
