{"_id":"playwright-smart-reporter","_rev":"40-9ed3dfb0552364a429cc87df8fc2b3e7","name":"playwright-smart-reporter","dist-tags":{"latest":"2.2.0"},"versions":{"0.1.0":{"name":"playwright-smart-reporter","version":"0.1.0","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@0.1.0","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"dist":{"shasum":"3b0fdf5436a9546f5889b758000f6e5053997704","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-0.1.0.tgz","fileCount":5,"integrity":"sha512-gYueJ09IROBApVxxor++boZERCySvTFSciKMxzWKW/Dy7hmBO7jMH/4cRTT+OStC5OZYxmbt/w3fiOlMwTwqtQ==","signatures":[{"sig":"MEYCIQDnEbIBV6pPyq7O+QXRcYu6Sz7u2jucAVCF+F96yY3GDQIhAN5e4fdx0tTziCVb3MUMYU0SGUAfyMH0Ll8c71g6pOpI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":86035},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","gitHead":"239ae80e8e6ca37584b44df56a6a658cfbbbe11f","scripts":{"test":"playwright test","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"dotenv":"^17.2.3"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.0","@playwright/test":"^1.49.0"},"peerDependencies":{"@playwright/test":">=1.40.0"},"optionalDependencies":{"openai":"^4.70.0","@anthropic-ai/sdk":"^0.32.0"},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_0.1.0_1764842163619_0.8193919348371184","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"playwright-smart-reporter","version":"0.1.1","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@0.1.1","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"dist":{"shasum":"f07fc96d68f13e9069900468d103bcb700db7372","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-0.1.1.tgz","fileCount":5,"integrity":"sha512-f3dA4N0nfd4x/X6a+pPOZWOtiDObVHhWppjoXdDTP/4yJtwhd6K6zeMCdq8y8oImI4OBGq7xEjYhqEUfRmxjkA==","signatures":[{"sig":"MEQCIGhFy2zXnXWxezgHTyQUE0ksgatoBA06nktGgNcloQerAiBhOC73FtFGhn7N7R3oE8Lh+lk94AB5N+kf5DYazBVHzg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":86355},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","gitHead":"50fd03729f0e5fdc9ae6272f1ff93b8592f91334","scripts":{"test":"playwright test","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"dotenv":"^17.2.3"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.0","@playwright/test":"^1.49.0"},"peerDependencies":{"@playwright/test":">=1.40.0"},"optionalDependencies":{"openai":"^4.70.0","@anthropic-ai/sdk":"^0.32.0"},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_0.1.1_1764842845237_0.82572588734688","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"playwright-smart-reporter","version":"0.5.0","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@0.5.0","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"94b4e398ba2a94ba7a9160d9edae57d0f066f3eb","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-0.5.0.tgz","fileCount":57,"integrity":"sha512-HyAiCMTvZzFvSHDp7vaChx6TJv5VwjE4VBO6DHCSxJhbEVJcQwZeN+ilrScMO4YVNbFHMG6Q252/tIG/KrYR7g==","signatures":[{"sig":"MEUCIQDQOIlZTy5Dz29gr3RnwSa2/D4dqFqDHbwHKBW1OlgLGwIgEM9Oy2GH//RKTEFq1x3D3zvQZt/VD1X/gUJa+Kw0yKo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":287507},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","gitHead":"d85a7de2189d830d9e0aa21c0430635abb3d6541","scripts":{"test":"playwright test","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"dotenv":"^17.2.3"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.0","@playwright/test":"^1.49.0"},"peerDependencies":{"@playwright/test":">=1.40.0"},"optionalDependencies":{"openai":"^4.70.0","@anthropic-ai/sdk":"^0.32.0"},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_0.5.0_1765878048601_0.6647790120201833","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"playwright-smart-reporter","version":"0.6.0","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@0.6.0","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"7a4588585e7e4f5502555849d5285acabed3b382","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-0.6.0.tgz","fileCount":57,"integrity":"sha512-mZ6cKyHTQrlNPjvx4ZDdASEsV2BaRehr9y6WR0DKgScaeDbj37LT9qd1+JAQc8c/yIaRERVa0n9oDabnvw5tQA==","signatures":[{"sig":"MEYCIQCSVr5koHWpltGCp/hHwu5PQvGbowHMxDvRW/U+jJIUigIhAPBDI6ltCKPDccGAVsv6JG0cG648BhmLUdfmziLGYqgb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":288412},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","gitHead":"7269b3a1e340b64d0ede5d6edc7e42c95426b325","scripts":{"test":"playwright test","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"dotenv":"^17.2.3"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.0","@playwright/test":"^1.49.0"},"peerDependencies":{"@playwright/test":">=1.40.0"},"optionalDependencies":{"openai":"^4.70.0","@anthropic-ai/sdk":"^0.32.0"},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_0.6.0_1765884835757_0.29052432635781855","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"playwright-smart-reporter","version":"0.7.0","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@0.7.0","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"1124626b38f425527d96ba4eecce79d682a7b42e","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-0.7.0.tgz","fileCount":61,"integrity":"sha512-g4PUbsvB0vY0kZfgX76Yi1ma8ddorxE95FiYEEU3kGG354wlyAzE+ikhPBmKelj/D2g9PO3IyEUHcCcmd5bjPA==","signatures":[{"sig":"MEYCIQCSyQiBVrXpn+uMp9LS26O2RyhisrFYM05mcWo/siQgKAIhAP45N9FyPYU9WlKXnBz1O+PypvOEaKSAsntXhEG9oqnO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":246504},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","gitHead":"a95ed38016bfd3d446ba66c46b750a4cbd2b6ace","scripts":{"test":"playwright test","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"dotenv":"^17.2.3"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.0","@playwright/test":"^1.49.0"},"peerDependencies":{"@playwright/test":">=1.40.0"},"optionalDependencies":{"openai":"^4.70.0","@anthropic-ai/sdk":"^0.32.0"},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_0.7.0_1767720621519_0.024936178058600156","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"playwright-smart-reporter","version":"0.8.0","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@0.8.0","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"39187b939f215ea5fc87ef83ccf6c01f28e85f16","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-0.8.0.tgz","fileCount":61,"integrity":"sha512-AlTet4JpRtTWPj99QLWJg10+RPT477DT2esxPrvadUh1O4yETBxDk9TuUDbRaEI6fn2LSsEVOHH51GEfWiF5AA==","signatures":[{"sig":"MEUCIBUa5Ydf5ZCaQPOZ9Ic4pFjK409vYQC324EMbNgVdCnZAiEA1Q5NFjK3DGn0tI4s9xdhr85IisQQ+1neqeNGTpJ7v+w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":249505},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","gitHead":"a95ed38016bfd3d446ba66c46b750a4cbd2b6ace","scripts":{"test":"playwright test","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"dotenv":"^17.2.3"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.0","@playwright/test":"^1.49.0"},"peerDependencies":{"@playwright/test":">=1.40.0"},"optionalDependencies":{"openai":"^4.70.0","@anthropic-ai/sdk":"^0.32.0"},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_0.8.0_1767778758387_0.80052802707882","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"playwright-smart-reporter","version":"0.8.1","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@0.8.1","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"0860cb98b2e98afdc03c20fd2cb9146454c8d18d","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-0.8.1.tgz","fileCount":61,"integrity":"sha512-Nmp4hqlUthrUkHJW+frGnxPY5CR9Mob2rT07NC/sFDvuscVdEo4o4Su1KydZbTdJKNZ/CbbW7fzaIYvMWuGtvQ==","signatures":[{"sig":"MEUCIHu49+8a5Uhc7sjtnCIJeSfNPDpBGcPea+L80hqqcqmCAiEAm7/vO7WEHXq/sMoWGqpKg5F1hQdRyF+POu7bjvHWumg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":249730},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","gitHead":"a95ed38016bfd3d446ba66c46b750a4cbd2b6ace","scripts":{"test":"playwright test","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"dotenv":"^17.2.3"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.0","@playwright/test":"^1.49.0"},"peerDependencies":{"@playwright/test":">=1.40.0"},"optionalDependencies":{"openai":"^4.70.0","@anthropic-ai/sdk":"^0.32.0"},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_0.8.1_1767780610606_0.06732428977545402","host":"s3://npm-registry-packages-npm-production"}},"0.8.2":{"name":"playwright-smart-reporter","version":"0.8.2","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@0.8.2","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"01e7d920692ffb74889de4cfc1ceccaa2f4540d1","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-0.8.2.tgz","fileCount":61,"integrity":"sha512-rMQBH5LuDrgBHo2gGbVwBwSCEDrCgU+tR6uQqUUZLV2QQHleI1fsW8B/hOjUsPDkzfY/ncqGSLmVa5a0ZlAqsw==","signatures":[{"sig":"MEUCIQCqfkS9ZM5gEr7K5652mfKfjQXZAZuQVRzQqL29MVn0FwIgYOxQY9n0Vz5C9b/DKN+W83qp9FkxTE3xxQsiepXrcgE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":251996},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","gitHead":"a95ed38016bfd3d446ba66c46b750a4cbd2b6ace","scripts":{"test":"playwright test","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"dotenv":"^17.2.3"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.0","@playwright/test":"^1.49.0"},"peerDependencies":{"@playwright/test":">=1.40.0"},"optionalDependencies":{"openai":"^4.70.0","@anthropic-ai/sdk":"^0.32.0"},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_0.8.2_1767784712891_0.6801056935370409","host":"s3://npm-registry-packages-npm-production"}},"0.8.3":{"name":"playwright-smart-reporter","version":"0.8.3","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@0.8.3","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"bf488683f78389370cbf29708be9c7a53ac79d58","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-0.8.3.tgz","fileCount":61,"integrity":"sha512-3TG56BamN6vXTcwaH0Wd/dhbV2qk+m1O/zZHTuoOTnDEPqRFVepWnYZqqmzdCXCxgTKqNySIsJG4E5NANYROjw==","signatures":[{"sig":"MEUCIQDs9ys48+jSQvdtze9Fcio55G0OPVUu0kPbwkORxJWv7wIgN8qy8DAPuqoFfb5nM+gZIAAfzWYGcs3KftjVM5ZKY2M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":252051},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","gitHead":"a95ed38016bfd3d446ba66c46b750a4cbd2b6ace","scripts":{"test":"playwright test","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"dotenv":"^17.2.3"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.0","@playwright/test":"^1.49.0"},"peerDependencies":{"@playwright/test":">=1.40.0"},"optionalDependencies":{"openai":"^4.70.0","@anthropic-ai/sdk":"^0.32.0"},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_0.8.3_1767786273888_0.4238484597158696","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"playwright-smart-reporter","version":"1.0.0","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.0.0","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"d11cdf58d6d5cf6ee859950826258b730498a4ac","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.0.0.tgz","fileCount":83,"integrity":"sha512-cEHs/XZ+CDtD6lQDFMPe2Wxrw27MJvyj3iDJQy/MuK5om48t+6pSZTIjRrCaHqV++yk4Rx2FLpFg7GgtW256Dg==","signatures":[{"sig":"MEUCIHcHkICb+m3PfqXeT7A+JthQSVxP+9z8n3ESPmGfVckFAiEA8jjyAau/R35kT7yfdZfO2m17QTwua7yP0a6tCGpG6kM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":505285},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","gitHead":"0e8acebc8990a0d8cbcfa23ce7cd9db530fd1e41","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"dotenv":"^17.2.3"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@playwright/test":"^1.49.0"},"peerDependencies":{"@playwright/test":">=1.40.0"},"optionalDependencies":{"openai":"^4.70.0","@anthropic-ai/sdk":"^0.32.0"},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.0.0_1768927973117_0.8216270546592754","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"playwright-smart-reporter","version":"1.0.1","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.0.1","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"6c148b88e43a2839aaa67a6f5da4f588d7a63c3b","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.0.1.tgz","fileCount":83,"integrity":"sha512-4ZYz3vRoqAmt48+fy4lq7lWNvb2uunTrLyncaZxL/y9AejDQ992AQ97PdlKEplCRpJZbTKWoA8ov+oAyJhpiRw==","signatures":[{"sig":"MEYCIQCSJq/gWkHAWGltvG6i4a9Nk55W6RJgu0unsyrWuJ3bXwIhALfYERrlB9xuw8lPyZIgNm8dDmEzwNdOgcWjKnY5hnIk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":502474},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","gitHead":"bdcafc4a0005a23499a04538960f784031cc9275","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"dotenv":"^17.2.3"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@playwright/test":"^1.49.0"},"peerDependencies":{"@playwright/test":">=1.40.0"},"optionalDependencies":{"openai":"^4.70.0","@anthropic-ai/sdk":"^0.32.0"},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.0.1_1768928168235_0.36016433441572904","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"playwright-smart-reporter","version":"1.0.2","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.0.2","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"7ab722a30cb1210879606bfec485b0fc17baa996","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.0.2.tgz","fileCount":85,"integrity":"sha512-HeD+cRT/Cs3BINGGcEP087Tkv19BMco19UVm8JBudmJksMXVJEcOJWeRFjG09XBBxiqF+0isYbDuh37oIUK/Lg==","signatures":[{"sig":"MEQCIEJzlIjY81FYc+KBIRLHuS+6MgF9mheEcqHj2EvM8yRoAiBsdF7CmsgmiTTRrUflzcgTfv1+d0GhDhFSu243YC6JAg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":537056},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","gitHead":"9c2cee0891b8651ef18a98b683a8ade0d8665033","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"dotenv":"^17.2.3","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0"},"peerDependencies":{"@playwright/test":">=1.40.0"},"optionalDependencies":{"openai":"^4.70.0","@anthropic-ai/sdk":"^0.32.0"},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.0.2_1769013353900_0.21815401628828202","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"playwright-smart-reporter","version":"1.0.3","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.0.3","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"11b9a62a84443a3cf3a6d06710668eaa7f1651c4","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.0.3.tgz","fileCount":85,"integrity":"sha512-10JE+DJaYd6PdqUjESj8gv9yvwALRnfK1RaawTLvnqyHQJ1tNi9JNRW6yLrB0iCzj+HsvGxOfQd/ZlkaEuRdnw==","signatures":[{"sig":"MEQCICpxgkioHxMRX3z+LuYtnElxDQUjl7XBCCrSuMVGbiAZAiABptwK3ppBZvNke3rNKG5IjeCi8Nit+FLnurkDTQzh1w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":537208},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","gitHead":"2ced066a6a9f09e9a95385adca4e00dd99bf912c","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"dotenv":"^17.2.3","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0"},"peerDependencies":{"@playwright/test":">=1.40.0"},"optionalDependencies":{"openai":"^4.70.0","@anthropic-ai/sdk":"^0.32.0"},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.0.3_1769013618846_0.05065429578778691","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"playwright-smart-reporter","version":"1.0.5","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.0.5","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"dc0e9a11dac199477279408f94bbc9d41eb7a17d","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.0.5.tgz","fileCount":91,"integrity":"sha512-k8D/k6v85Dc3hUJfftVENFJXeSoNP8zeJJDrPLaWI5ddX8BzCkyglThvXhQJ1X/KZM+IT3Lqnpc4usZwx9QB1Q==","signatures":[{"sig":"MEYCIQCHyryEDcFAXNEWKoBqgwKSroU9M4Kfl7QQIIVfUOoiHgIhALWighnjEJ1FEf8QomxTt2JMHly22Mdf47IopYY7IbJV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":881072},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","gitHead":"340fefac8ea0a671bbce8266e3680e33da4cccda","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"dotenv":"^17.2.3","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0"},"peerDependencies":{"@playwright/test":">=1.40.0"},"optionalDependencies":{"openai":"^4.70.0","@anthropic-ai/sdk":"^0.32.0"},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.0.5_1769509294566_0.327487881074221","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"playwright-smart-reporter","version":"1.0.6","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.0.6","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"757bd3930223c135a001567dc23adadc3384c3d4","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.0.6.tgz","fileCount":95,"integrity":"sha512-tFESE7qtkomYZROgtn5dIQmZ+2h92tH+uGWFQ9+ZZYUt6mecQkkGcPlPx8+PG30mgdTd+tchSVJCPBvm/1qGNg==","signatures":[{"sig":"MEUCIGcHjynehpEMPcvcYDqDUWN4hfFTlwiCES1WUWHk2peCAiEAsppqKN85QB165eWSrFbVsdyDfSlBkb+WUXXf1Lv9Fsc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":901310},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","gitHead":"f9133f6f2d06da14fc3fc628e5837fd2a246b234","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"dotenv":"^17.2.3","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0"},"peerDependencies":{"@playwright/test":">=1.40.0"},"optionalDependencies":{"openai":"^4.70.0","@anthropic-ai/sdk":"^0.32.0"},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.0.6_1769616628330_0.727687246819174","host":"s3://npm-registry-packages-npm-production"}},"1.0.7":{"name":"playwright-smart-reporter","version":"1.0.7","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.0.7","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"e0cd27b0409d8b2bced7f581d8f3dcc176f90ace","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.0.7.tgz","fileCount":95,"integrity":"sha512-TG7+oIwXrTvc1ueWWLWPQ90Zq8KiIl2aoEG/sWVofQsOI6nOCIHA5dfq7PGsFQEdf6iZdnzoNlYuQCWxeEWz/w==","signatures":[{"sig":"MEQCIG6E3Ql/lSNPkP3K4bBw30LuRbV58BIVlB0dSnXHAMcaAiBtdl9J2ICzKRDGYsQ/LlN7GfXH+wBAcYqcXYlRRNCBEw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":928809},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","gitHead":"b4caf2752c21cb736f87c3c19aba38bf1f2e7070","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"dotenv":"^17.2.3","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0"},"peerDependencies":{"@playwright/test":">=1.40.0"},"optionalDependencies":{"openai":"^4.70.0","@anthropic-ai/sdk":"^0.32.0"},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.0.7_1770131813815_0.9987873958853186","host":"s3://npm-registry-packages-npm-production"}},"1.0.8":{"name":"playwright-smart-reporter","version":"1.0.8","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.0.8","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"9d8d9c92c3a59a6848aca949c5a8dcb5ef9a286b","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.0.8.tgz","fileCount":97,"integrity":"sha512-n/2zjRwJhL9ALOf4/1fWiXVvRxC1tzXMTfkaB55RkX1tAJmGGDtTIuEvbkOy5uEwj7ayRcupnM+l+6ciX5w9Eg==","signatures":[{"sig":"MEQCIGc03SA4ZhpnantN8nmVsgdWbgMfnJbIzLDtjRFeKN7uAiAw6sO4iEKdymXGgkE01+9bAC/C55XtDWPm3YfvUtaZ/w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":967488},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","gitHead":"bc8cc48583e5e09ad13f6044b7da90e1370d7f29","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"dotenv":"^17.2.3","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0"},"peerDependencies":{"@playwright/test":">=1.40.0"},"optionalDependencies":{"openai":"^4.70.0","@anthropic-ai/sdk":"^0.32.0"},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.0.8_1770397901888_0.7117841322682887","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"playwright-smart-reporter","version":"1.1.0","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.1.0","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter":"dist/bin/cli.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"8fd4294d64c27f8586c7fcdb8d85b3dba4b30e40","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.1.0.tgz","fileCount":115,"integrity":"sha512-qxryIdbY27S7IhZSgJikMNcCkxPVgtD1LTuLeSW8HujHCgzy4GotUhwNCBhYYAvB+x+cZgxjVwq/PncMDtPuKg==","signatures":[{"sig":"MEYCIQD72azAKzuCUALJ87pj/YFr3WoMpSGEu8tFOgIoQlogDgIhAKMTKGmw5slDMQfk4fCYLVrhOBqBjx4TQpUDzWfCuYqw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":977755},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"gitHead":"595a21d3404d6dea2cab78e6f56998df0c68aa98","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"pdfkit":"^0.16.0","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/pdfkit":"^0.13.8","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0"},"peerDependencies":{"playwright-core":">=1.40.0","@playwright/test":">=1.40.0"},"optionalDependencies":{"openai":"^4.70.0","@anthropic-ai/sdk":"^0.32.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.1.0_1771954141023_0.6565735093836342","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"playwright-smart-reporter","version":"1.1.1","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.1.1","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter":"dist/bin/cli.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"dd3a0425b53380cbb58623d617cd4f165aa7c1a8","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.1.1.tgz","fileCount":115,"integrity":"sha512-okwFLmKEwoROD6if8s8lMaFzR6vTQIOExEuxuARzuimwDN1y872PCCg88gxK40pC+LlZ0UHuvsHh9+iYuig+RA==","signatures":[{"sig":"MEUCIQCmyKCzy8xETcTX3/e8lrq4lLninSaknPsREJFxiygjPQIgHG/0KGbVjwk/BHLkCwiuHhDuzM8dBIH1zFNu7WJXFAA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":981534},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"gitHead":"ce84bbed2220927380e7cffafc27cdcfd172f788","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"pdfkit":"^0.16.0","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/pdfkit":"^0.13.8","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0"},"peerDependencies":{"playwright-core":">=1.40.0","@playwright/test":">=1.40.0"},"optionalDependencies":{"openai":"^4.70.0","@anthropic-ai/sdk":"^0.32.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.1.1_1771954605494_0.38184094330726026","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"playwright-smart-reporter","version":"1.1.2","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.1.2","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter":"dist/bin/cli.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"abd6657e62f5f6bf0f0898f2bac8762b9aa9a8b7","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.1.2.tgz","fileCount":115,"integrity":"sha512-+n8MvaXWReSUX9YwuscMSR7xOpaCGpntrqMMTSAsSRCPFaW4XEoUdKj6Shy2AvpC9faw1aIET3CAFCamrsePDQ==","signatures":[{"sig":"MEYCIQCChLIDny5GwD1DF4xwXz/LIm4WNPUE2W6Lv4Z4nzj0LQIhAOFB1tFi4keYr66KMtucHyFML1n/NA8LmaLu25MUYjNE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":981411},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"gitHead":"befa1274fbde63342b7c766d5d2feb00e42b5a2f","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"pdfkit":"^0.16.0","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/pdfkit":"^0.13.8","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0"},"peerDependencies":{"playwright-core":">=1.40.0","@playwright/test":">=1.40.0"},"optionalDependencies":{"openai":"^4.70.0","@anthropic-ai/sdk":"^0.32.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.1.2_1771955022496_0.8043513624145431","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"playwright-smart-reporter","version":"1.2.0","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.2.0","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter":"dist/bin/cli.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"46afc1c11da38eb9edcf042759d2494ae76e231d","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.2.0.tgz","fileCount":115,"integrity":"sha512-cUG7D9qv21naTGWjwUYRx7tb1mUb8h6LiTn5RtEoiGEHxhaLjr5cfmBIAbiXOCGlnaHAoJaQ8Feboon+B+bD8A==","signatures":[{"sig":"MEQCIBzPIrC/mjYK/+pbNVX19+W8RRqn+tOuaJOY/WIzXFg+AiA5xqG1O/tPf6ykGmWyQQOJVwjH6F83HqZ7LX5Y5r1ieA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":978076},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"gitHead":"607d4516ecb8e0e418096e7ef23e04d516071c07","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"pdfkit":"^0.16.0","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/pdfkit":"^0.13.8","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0","@vitest/coverage-v8":"^2.1.9"},"peerDependencies":{"playwright-core":">=1.40.0","@playwright/test":">=1.40.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.2.0_1772042093111_0.21385322138812324","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"playwright-smart-reporter","version":"1.2.1","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.2.1","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/qa-gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/qa-gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter":"dist/bin/cli.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"13ce7d473f8b6af1821a96eca94d4513fa92546b","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.2.1.tgz","fileCount":115,"integrity":"sha512-lpAnfx8LtR5UKZcVPl/tVHETBc6yehrWCoR8Q+Cgg8NfnnW4GLPHReAxzJSMpV3Bp7mw60bu8DjW6kMwT2GoOQ==","signatures":[{"sig":"MEQCIH15QEN5dh477ctV13jfI6S7lQrUi+5iXhhTFeqwhYBpAiBew70z6iNyXQl7z6W4ZhWdn8TgZqc9OT4/XAb1UxBm6g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":977997},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"gitHead":"e5536a1af183519d575927957ca8f05656a513e0","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/qa-gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"pdfkit":"^0.16.0","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/pdfkit":"^0.13.8","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0","@vitest/coverage-v8":"^2.1.9"},"peerDependencies":{"playwright-core":">=1.40.0","@playwright/test":">=1.40.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.2.1_1772043944422_0.03154487986948418","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"playwright-smart-reporter","version":"1.3.0","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.3.0","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/qa-gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/qa-gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter":"dist/bin/cli.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"deb34012842c327cf683392c6588e7205bbf4c0e","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.3.0.tgz","fileCount":115,"integrity":"sha512-akPe2KuM5gtAtbsn48IbSMrhElKktoaLC1XcISEMPPuOapiXf1bQJQ4+ll6y+JZ6lVgpUuk3IAQmbyMn8k+tTQ==","signatures":[{"sig":"MEUCIQDKBAFjlQB/q7PoI/L/bImvDav6uxCcPVHl9NkjuN+t6wIgZVR2pzcldRA39eFjcfbnXPG8W0JJDHx/gURdS5rVWHs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":978793},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"gitHead":"6b64c7dd710b92c5e0df6d0aaa22e38e4e0f43e9","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/qa-gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"pdfkit":"^0.16.0","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/pdfkit":"^0.13.8","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0","@vitest/coverage-v8":"^2.1.9"},"peerDependencies":{"playwright-core":">=1.40.0","@playwright/test":">=1.40.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.3.0_1772121175123_0.31574875973191885","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"playwright-smart-reporter","version":"1.3.1","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.3.1","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/qa-gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/qa-gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter":"dist/bin/cli.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"cf4c43439f2dfbb39757dced5dccde696c2fa6cd","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.3.1.tgz","fileCount":117,"integrity":"sha512-83Z7nr/nEQfSl5HLYXESVQAo0K+sfNPmlsqOJRfI9y6DW6l0/Lx9LPgs84dNsdsXJVEOaOup+242CPZP716Iig==","signatures":[{"sig":"MEUCIEEHEdlpdU3RRwOxDDnSgsroDkb5VtcYIFScDpFFBR3XAiEA6aWzUOpCLLG93TaJ5tEzDQO7ZXxAgIRRaVyMmg3eqZk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1001550},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"gitHead":"65a648f5418fedafac032ad2c9f86c48ab0ac640","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/qa-gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"pdfkit":"^0.16.0","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/pdfkit":"^0.13.8","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0","@vitest/coverage-v8":"^2.1.9"},"peerDependencies":{"playwright-core":">=1.40.0","@playwright/test":">=1.40.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.3.1_1772214308701_0.5295029904961026","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"playwright-smart-reporter","version":"1.4.0","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.4.0","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/qa-gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/qa-gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter":"dist/bin/cli.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"4ac27c2a6a263ce3c31ef16fb154a14daf74efb2","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.4.0.tgz","fileCount":117,"integrity":"sha512-pCjdExio3jnVe4IUVGjhZyzNU7O04HChznvf6/ZAmEjNZpp86rqeAMGZz+JE77paAbMFvW9kdHbOnZZtEtER9w==","signatures":[{"sig":"MEUCIQDIRLwcTKHPcGqCrj++PBMTdBfJ40RNo8Bqs3OgB7ec1wIgHXEYiJF3PJW7fWx9ewEBhiy89yJhpVLUPS8JhYEAwOw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1011448},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"gitHead":"5aa40800c154c51becacadb412c0310f769a790d","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/qa-gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"pdfkit":"^0.16.0","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/pdfkit":"^0.13.8","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0","@vitest/coverage-v8":"^2.1.9"},"peerDependencies":{"playwright-core":">=1.40.0","@playwright/test":">=1.40.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.4.0_1772273595784_0.6553952326997714","host":"s3://npm-registry-packages-npm-production"}},"1.4.1":{"name":"playwright-smart-reporter","version":"1.4.1","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.4.1","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/qa-gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/qa-gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter":"dist/bin/cli.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"dca8ba99c5b70c73733890306b6ba117d6abbc8f","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.4.1.tgz","fileCount":117,"integrity":"sha512-BjvX5UEga/pb+ttmEb7TkXs8vUo9ErE3TOROkNU1OK/y4qL8rBIFM/uWXWg2K41YKTlD+9yVINN4By5xbsA9tw==","signatures":[{"sig":"MEUCICGxy+f1+EsVWA9i1lrOTj5ngCfSq33+KzdEbRtrHOlmAiEA9g8WtY+v8jYjJxYgIXaZxwibGQQsfB4ZKsSOyI1Den0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1011444},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"gitHead":"11bd12cc93b8619e248489036b70f391ffc9e7bc","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/qa-gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"pdfkit":"^0.16.0","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/pdfkit":"^0.13.8","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0","@vitest/coverage-v8":"^2.1.9"},"peerDependencies":{"playwright-core":">=1.40.0","@playwright/test":">=1.40.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.4.1_1772276348580_0.44302863224745836","host":"s3://npm-registry-packages-npm-production"}},"1.4.2":{"name":"playwright-smart-reporter","version":"1.4.2","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.4.2","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/qa-gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/qa-gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter":"dist/bin/cli.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"42a7b1961c58b76104a5fd62668b3687f612fedb","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.4.2.tgz","fileCount":125,"integrity":"sha512-ASIU+omN+ChMPzC8QqIM8XtfQIHrIBGfi5zYanRXQkBwOojMXJSFTJ/GEFv56a3TI3wDotYfH4V8lRZuD3iyNg==","signatures":[{"sig":"MEYCIQC+9ldmwBvbzKW9hq7tDU0bvTwybF+YQd03pNgv4RQqBgIhAIFV8n2Erle0oNHRC2mBUf1nOrhu2PPBFvD1auAKxVTy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1038075},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"gitHead":"4638b1319db08d2e704b543358e16dd044c840da","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/qa-gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"pdfkit":"^0.16.0","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/pdfkit":"^0.13.8","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0","@vitest/coverage-v8":"^2.1.9"},"peerDependencies":{"playwright-core":">=1.40.0","@playwright/test":">=1.40.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.4.2_1772317666780_0.7815410429711886","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"playwright-smart-reporter","version":"1.5.0","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.5.0","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/qa-gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/qa-gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter":"dist/bin/cli.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"d6dcd502d3733b027ecdcc3337a971f0c7890f55","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.5.0.tgz","fileCount":125,"integrity":"sha512-pZiTa76IOiw+Pt767rdO8xg+GY90d4DN1afgo/7fCMvgP4ehS6hBfaaTCg2UeLWK9R66fTFnmWWdW+0Kg7Appg==","signatures":[{"sig":"MEYCIQCokYXLggVCaJRuaI/kDk8VU5b6bamdc0UM4XlYcvjnFAIhAIT6e9i4YhyK/Gbeonq6/0T3Qu/4Z4d/ppGKa7/GwES/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1045850},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"gitHead":"dc6d443f84a18f7f3f1e1462df6165224578dc2a","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/qa-gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"pdfkit":"^0.16.0","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/pdfkit":"^0.13.8","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0","@vitest/coverage-v8":"^2.1.9"},"peerDependencies":{"playwright-core":">=1.40.0","@playwright/test":">=1.40.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.5.0_1772456993043_0.18723917963724102","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"playwright-smart-reporter","version":"1.6.0","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.6.0","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/qa-gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/qa-gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter":"dist/bin/cli.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"cc4e2fc118693dfa2b7b590711cc658fb3736bf8","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.6.0.tgz","fileCount":125,"integrity":"sha512-Ydf+bh23+5WOdvXOsi665LVmYavndVYzaB7bElUbo6K/iNZa2ZAGc7oblEylpY1GNTnbyjK+gmE3BjyRCQShwQ==","signatures":[{"sig":"MEYCIQCpcn2VtHyd0BhQJJZDP1IzUp41ATKIr1plSnFmtr7nagIhALSB7+PQxGL8KhF7tk2PBSaVCQVHjIJ5j6O5PtNgKPiL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1118027},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"gitHead":"dec2a044531e30e4a8f7db9d3bc4cdddd3fc87d9","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/qa-gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"pdfkit":"^0.16.0","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/pdfkit":"^0.13.8","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0","@vitest/coverage-v8":"^2.1.9"},"peerDependencies":{"playwright-core":">=1.40.0","@playwright/test":">=1.40.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.6.0_1772638980176_0.03192625950162298","host":"s3://npm-registry-packages-npm-production"}},"1.6.1":{"name":"playwright-smart-reporter","version":"1.6.1","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.6.1","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/qa-gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/qa-gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter":"dist/bin/cli.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"cb5c57d3bf41e139f60b7815af003f47d1986cf7","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.6.1.tgz","fileCount":125,"integrity":"sha512-2dRNDuzNBGdw+Ufs2BUR6qbkLDt/jBfzDmo7Y8fBwwJPylkqS8HzQ0mNuSk+s6JSwtn4vLcP+/ngF2G9Y3+n0g==","signatures":[{"sig":"MEQCIAt77Z4E6xI6z6WNaDLnBe+33qJeseS2uJhjeXy07PvVAiA/JQxAHe7ImKgf7yMku+bhdeBoIX6NfRPS0gdslUK/4Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1118132},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"gitHead":"e81989cb0dae77cf835b19fb979b2489c466cb42","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/qa-gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"pdfkit":"^0.16.0","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/pdfkit":"^0.13.8","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0","@vitest/coverage-v8":"^2.1.9"},"peerDependencies":{"playwright-core":">=1.40.0","@playwright/test":">=1.40.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.6.1_1772640837545_0.35724560348183854","host":"s3://npm-registry-packages-npm-production"}},"1.6.2":{"name":"playwright-smart-reporter","version":"1.6.2","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.6.2","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/qa-gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/qa-gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter":"dist/bin/cli.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"ab62146cb186849405e9c7c0e71677ef0c5c3ad0","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.6.2.tgz","fileCount":125,"integrity":"sha512-wsBJE8rxnBuK4rf3gQ3zoawAkL+45ZtFMlivo7rpeWy4JAbvliJvsCTFOhi41OYmzF8njDs2ASZF5UeCnJ0/yw==","signatures":[{"sig":"MEUCIDb17YYoA7VNIlH5Bi90FX4v278arBus/DrZZwgnorHnAiEAjmWUee6BIymxcmSjJYbtaVpS4w0BAqZBC8xOQNSpGYA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1118381},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"gitHead":"f7aea4feea1b4db97558eaaef34b66fa481ecd1d","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/qa-gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"pdfkit":"^0.16.0","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/pdfkit":"^0.13.8","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0","@vitest/coverage-v8":"^2.1.9"},"peerDependencies":{"playwright-core":">=1.40.0","@playwright/test":">=1.40.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.6.2_1772647938326_0.28996048760075244","host":"s3://npm-registry-packages-npm-production"}},"1.6.3":{"name":"playwright-smart-reporter","version":"1.6.3","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.6.3","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/qa-gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/qa-gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter":"dist/bin/cli.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"a73ac58deffff97bb867122a92882747c93bca45","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.6.3.tgz","fileCount":125,"integrity":"sha512-sIUo7Qzp1npNYaGFI1B/T2w2cheI+5yep/+xqHSVq5rHneuiJzBcfBqysqOnSg1XC21PCpakl+OiAzfIH02yzg==","signatures":[{"sig":"MEYCIQC19YPGQHIzGFWe9B6QLk+61iF2flYc1aIkaDq4FNkg9AIhANVvmKsmC3GdZhLftIWApEWmqOOcQ/U8YylMgmpmYpz2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1132072},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"gitHead":"b03abef13d8c8f0174a5b24a5faa1284fa36870f","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/qa-gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"pdfkit":"^0.16.0","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/pdfkit":"^0.13.8","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0","@vitest/coverage-v8":"^2.1.9"},"peerDependencies":{"playwright-core":">=1.40.0","@playwright/test":">=1.40.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.6.3_1772659936182_0.7363926356805748","host":"s3://npm-registry-packages-npm-production"}},"1.6.4":{"name":"playwright-smart-reporter","version":"1.6.4","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.6.4","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/qa-gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/qa-gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter":"dist/bin/cli.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"1e6f8fecc43cd70f9dbb2fff90c6a7572eb30128","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.6.4.tgz","fileCount":125,"integrity":"sha512-kXCKF9BHac4fNrcjsPIEACY1DBiJ/xZPhAGKlKpyPI8F0fYHuwtuxHUjxudnfbxgeXDbGhM9CIAn0UGwVJkkrA==","signatures":[{"sig":"MEYCIQDci/d1UCyzgNn3/XYn5IU+xJrN08Fmb21RHRVH2IWvGQIhANkgjECeH2H9j6WGAy7VRPBFHlrkV5eKwP9W+JQ+NhXd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1137722},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"gitHead":"c506d7fb128cc0d51d74f501502cf5dba1aa09f9","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/qa-gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"pdfkit":"^0.16.0","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/pdfkit":"^0.13.8","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0","@vitest/coverage-v8":"^2.1.9"},"peerDependencies":{"playwright-core":">=1.40.0","@playwright/test":">=1.40.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.6.4_1772706651660_0.905924853218629","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"name":"playwright-smart-reporter","version":"1.7.0","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.7.0","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/qa-gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/qa-gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter":"dist/bin/cli.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"5231daeb24e96226fe2fb54522131009524d7f94","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.7.0.tgz","fileCount":149,"integrity":"sha512-zg0/c5ISvF0hQrp6FC0wEtgv3h+wvNSPrI+bXbDkGcGjdtWQRB/Xx3cm1+4JVMvPDmeTe1BmayKeUOnWVr3FFQ==","signatures":[{"sig":"MEUCIQCoXmRaSNUIr2/A7htd1McXvR0x6NBdj/jxZktkmZWleQIgI00YncJ1W3JWC+mclP+mBxAVT1KY/sdjXvI2kSxNyHw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1191340},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"gitHead":"2d8f2ec6898a8c55f318dbd852a745d996e78bc1","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/qa-gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"pdfkit":"^0.16.0","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/pdfkit":"^0.13.8","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0","@vitest/coverage-v8":"^2.1.9"},"peerDependencies":{"playwright-core":">=1.40.0","@playwright/test":">=1.40.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.7.0_1772979107243_0.37955786562557625","host":"s3://npm-registry-packages-npm-production"}},"1.6.5":{"name":"playwright-smart-reporter","version":"1.6.5","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@1.6.5","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/qa-gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/qa-gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter":"dist/bin/cli.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"827adb06c131210744fcacc66bd14419d873c2b8","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-1.6.5.tgz","fileCount":149,"integrity":"sha512-bNL4hPtDw8haef1txseX73rn477wr9m3YVPctON/TwtdRpOH3ODzxz9pOshSdE79SCYQt5nAlt6BOzyt1yqRvQ==","signatures":[{"sig":"MEYCIQD0goqGAdvrH8ukGeRNr/EsEvT57668sAUwmwkir+9xLgIhAIeacMiQV/igO23C0kYVR7Y48qXcl1mIRKbMN/g4CIEF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1185706},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"gitHead":"4fd419cf40f236ac8adfaed73dc9c459ea65ca6b","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/qa-gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"10.9.2","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"23.11.0","dependencies":{"pdfkit":"^0.16.0","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/pdfkit":"^0.13.8","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0","@vitest/coverage-v8":"^2.1.9"},"peerDependencies":{"playwright-core":">=1.40.0","@playwright/test":">=1.40.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_1.6.5_1772979822674_0.2887135182753753","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"playwright-smart-reporter","version":"2.0.0","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@2.0.0","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/qa-gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/qa-gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter":"dist/bin/cli.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"cbd55bfbb0533302f0b9d14c38bb38879714f56e","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-2.0.0.tgz","fileCount":119,"integrity":"sha512-IFI+IETvkz5fNsqyZa/3WphrYQVOEQZo+YIMUno+6wsgBQSe5y5pb/K1caoDIcP93cIrKH5qdNi+bONfy8jrYw==","signatures":[{"sig":"MEQCIFn6cPJmaVehULfpDI5+lsLHhPkGkvjQQZsTZ/5eTAQXAiBQlcUslwhB0Pc4oQAk2qH5Xl9jD7IvG//5cz1Htt9dAw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1094785},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"gitHead":"dd8ddccebd007e2c1b5eb1c927695413930c922c","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/qa-gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"11.11.0","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"24.14.1","dependencies":{"pdfkit":"^0.16.0","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/pdfkit":"^0.13.8","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0","@vitest/coverage-v8":"^2.1.9"},"peerDependencies":{"playwright-core":">=1.40.0","@playwright/test":">=1.40.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_2.0.0_1786028214594_0.05807768369822064","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"playwright-smart-reporter","version":"2.1.0","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"author":{"name":"Gary Parker"},"license":"MIT","_id":"playwright-smart-reporter@2.1.0","maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"contributors":[{"url":"https://github.com/Morph93","name":"Filip Gajic"},{"url":"https://github.com/TheAntz","name":"TheAntz"}],"homepage":"https://github.com/qa-gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/qa-gary-parker/playwright-smart-reporter/issues"},"bin":{"playwright-smart-reporter":"dist/bin/cli.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-merge-history":"dist/bin/merge-history.js"},"dist":{"shasum":"10d4c4b8846ae719b4a41ba1ac4975abe72b4ff3","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-2.1.0.tgz","fileCount":121,"integrity":"sha512-X56I3wA+P0Acj+CRL2T5EGf//0Fkvft7/qMWnIbPp6D2pKQFJuh//uosvBflXat8/nAmYrqUc0kxmodCmSVisQ==","signatures":[{"sig":"MEYCIQCec85AS5KHXqu22dDQrUeav7lXEcLMarHpOpO0zMYyCQIhANNjKHI/sNVq3l6JNjaio+BljaJlT70IPr/fbTPWdIdc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1105216},"main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"gitHead":"8472a0a4b5faa820ae553a221c4aaa54392b0fb6","scripts":{"test":"vitest run","build":"tsc","test:demo":"playwright test --config=example/playwright.config.ts","test:watch":"vitest","test:coverage":"vitest run --coverage","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"repository":{"url":"git+https://github.com/qa-gary-parker/playwright-smart-reporter.git","type":"git"},"_npmVersion":"11.11.0","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","directories":{},"_nodeVersion":"24.14.1","dependencies":{"pdfkit":"^0.16.0","adm-zip":"^0.5.16"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.0","typescript":"^5.3.0","@types/pdfkit":"^0.13.8","@types/adm-zip":"^0.5.7","@playwright/test":"^1.49.0","@vitest/coverage-v8":"^2.1.9"},"peerDependencies":{"playwright-core":">=1.40.0","@playwright/test":">=1.40.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/playwright-smart-reporter_2.1.0_1786099075672_0.01851216363292374","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"playwright-smart-reporter","version":"2.2.0","description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","main":"dist/smart-reporter.js","types":"dist/smart-reporter.d.ts","bin":{"playwright-smart-reporter-merge-history":"dist/bin/merge-history.js","playwright-smart-reporter-view-trace":"dist/bin/view-trace.js","playwright-smart-reporter-serve":"dist/bin/serve.js","playwright-smart-reporter":"dist/bin/cli.js"},"exports":{".":{"types":"./dist/smart-reporter.d.ts","default":"./dist/smart-reporter.js"},"./quarantine":{"types":"./dist/quarantine/quarantine-helper.d.ts","default":"./dist/quarantine/quarantine-helper.js"}},"scripts":{"build":"tsc","test":"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage","test:demo":"playwright test --config=example/playwright.config.ts","test:merge-local":"rm -rf blob-reports && mkdir -p blob-reports/all && PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run1 playwright test example/parallel/test1.spec.ts --config=example/playwright-blob.config.ts; PLAYWRIGHT_BLOB_OUTPUT_DIR=blob-reports/run2 playwright test example/parallel/test2.spec.ts --config=example/playwright-blob.config.ts; cp blob-reports/run1/*.zip blob-reports/run2/*.zip blob-reports/all/; node ./dist/merge-history.js blob-reports/run1/test-history.json blob-reports/run2/test-history.json -o blob-reports/all/test-history.json; npx playwright merge-reports --reporter=./dist/smart-reporter.js blob-reports/all"},"keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"author":{"name":"Gary Parker"},"contributors":[{"name":"Filip Gajic","url":"https://github.com/Morph93"},{"name":"TheAntz","url":"https://github.com/TheAntz"}],"license":"MIT","repository":{"type":"git","url":"git+https://github.com/qa-gary-parker/playwright-smart-reporter.git"},"homepage":"https://github.com/qa-gary-parker/playwright-smart-reporter#readme","bugs":{"url":"https://github.com/qa-gary-parker/playwright-smart-reporter/issues"},"peerDependencies":{"@playwright/test":">=1.40.0","playwright-core":">=1.40.0"},"peerDependenciesMeta":{"playwright-core":{"optional":true}},"devDependencies":{"@playwright/test":"^1.49.0","@types/adm-zip":"^0.5.7","@types/pdfkit":"^0.13.8","@vitest/coverage-v8":"^2.1.9","typescript":"^5.3.0","vitest":"^2.1.0"},"dependencies":{"adm-zip":"^0.5.16","pdfkit":"^0.16.0"},"gitHead":"1939e7710ea8a6e218147058dddcb10ee8dab63f","_id":"playwright-smart-reporter@2.2.0","_nodeVersion":"24.14.1","_npmVersion":"11.11.0","dist":{"integrity":"sha512-bi6aexHbP9HXb/kfNYykToZL9k0zlBrs2FKbMH20HCggi4O/TfXdolrp3M+a0qWaC8XQRUEUfvKJKX5SObrOWQ==","shasum":"958522be5b8a6e10d0db334a5d1d747377392c37","tarball":"https://registry.npmjs.org/playwright-smart-reporter/-/playwright-smart-reporter-2.2.0.tgz","fileCount":121,"unpackedSize":1116890,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCh6DRKV5HXw2eUA7YRjPbbGZeYhVi1SUasjPYZrizuJQIhAKb2nTyiMZDQ3ePquzp+/VJ+iozxaQUnWbBIIP07tuKn"}]},"_npmUser":{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"},"directories":{},"maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/playwright-smart-reporter_2.2.0_1788268989348_0.9500982576917505"},"_hasShrinkwrap":false}},"time":{"created":"2025-12-04T09:56:03.618Z","modified":"2026-09-01T13:23:09.640Z","0.1.0":"2025-12-04T09:56:03.876Z","0.1.1":"2025-12-04T10:07:25.383Z","0.5.0":"2025-12-16T09:40:48.760Z","0.6.0":"2025-12-16T11:33:55.944Z","0.7.0":"2026-01-06T17:30:21.660Z","0.8.0":"2026-01-07T09:39:18.530Z","0.8.1":"2026-01-07T10:10:10.760Z","0.8.2":"2026-01-07T11:18:33.043Z","0.8.3":"2026-01-07T11:44:34.022Z","1.0.0":"2026-01-20T16:52:53.278Z","1.0.1":"2026-01-20T16:56:08.381Z","1.0.2":"2026-01-21T16:35:54.062Z","1.0.3":"2026-01-21T16:40:18.989Z","1.0.5":"2026-01-27T10:21:34.771Z","1.0.6":"2026-01-28T16:10:28.550Z","1.0.7":"2026-02-03T15:16:54.052Z","1.0.8":"2026-02-06T17:11:42.074Z","1.1.0":"2026-02-24T17:29:01.215Z","1.1.1":"2026-02-24T17:36:45.710Z","1.1.2":"2026-02-24T17:43:42.712Z","1.2.0":"2026-02-25T17:54:53.317Z","1.2.1":"2026-02-25T18:25:44.663Z","1.3.0":"2026-02-26T15:52:55.350Z","1.3.1":"2026-02-27T17:45:08.994Z","1.4.0":"2026-02-28T10:13:15.982Z","1.4.1":"2026-02-28T10:59:08.764Z","1.4.2":"2026-02-28T22:27:47.014Z","1.5.0":"2026-03-02T13:09:53.243Z","1.6.0":"2026-03-04T15:43:00.394Z","1.6.1":"2026-03-04T16:13:57.741Z","1.6.2":"2026-03-04T18:12:18.529Z","1.6.3":"2026-03-04T21:32:16.351Z","1.6.4":"2026-03-05T10:30:51.838Z","1.7.0":"2026-03-08T14:11:47.427Z","1.6.5":"2026-03-08T14:23:42.853Z","2.0.0":"2026-08-06T14:56:54.766Z","2.1.0":"2026-08-07T10:37:55.831Z","2.2.0":"2026-09-01T13:23:09.501Z"},"bugs":{"url":"https://github.com/qa-gary-parker/playwright-smart-reporter/issues"},"author":{"name":"Gary Parker"},"license":"MIT","homepage":"https://github.com/qa-gary-parker/playwright-smart-reporter#readme","keywords":["playwright","reporter","testing","html-reporter","ai","flaky-tests","performance","test-analysis","test-stability","retry-analysis","failure-clustering","trace-viewer","quality-gates","pdf-export","test-quarantine","ci-cd"],"repository":{"type":"git","url":"git+https://github.com/qa-gary-parker/playwright-smart-reporter.git"},"description":"An intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, and performance regression alerts","contributors":[{"name":"Filip Gajic","url":"https://github.com/Morph93"},{"name":"TheAntz","url":"https://github.com/TheAntz"}],"maintainers":[{"name":"qa.gary.parker","email":"qa.gary.parker@gmail.com"}],"readme":"# playwright-smart-reporter\n\nAn intelligent Playwright HTML reporter with AI-powered failure analysis, flakiness detection, performance regression alerts, and a modern interactive dashboard. Free and open source (MIT) — every feature included.\n\n![Report Overview](https://raw.githubusercontent.com/qa-gary-parker/playwright-smart-reporter/master/images/report-overview-dark.png)\n*Dashboard with quality gates, quarantine, suite health grade, attention alerts, and failure clusters*\n\n## Installation\n\n```bash\nnpm install -D playwright-smart-reporter\n```\n\n## Quick Start\n\nAdd to your `playwright.config.ts`:\n\n```typescript\nimport { defineConfig } from '@playwright/test';\n\nexport default defineConfig({\n  reporter: [\n    ['playwright-smart-reporter', {\n      outputFile: 'smart-report.html',\n      historyFile: 'test-history.json',\n      maxHistoryRuns: 10,\n    }],\n  ],\n});\n```\n\nRun your tests and open the generated `smart-report.html`.\n\n## At a Glance\n\n- Stability grades (A–F) so you know which tests to trust\n- Flakiness detection across retries and history\n- Run-to-run comparison — catch regressions before they ship\n- Screenshot, video, and trace gallery for every failure\n- Network request logs to pinpoint API issues\n- CI auto-detection & notifications\n- Live progress dashboard — run, cancel, and filter tests as they execute\n- AI-powered root cause analysis (bring your own Anthropic, OpenAI, or Gemini API key)\n- 10 themes plus fully custom theme colours\n- PDF, JSON, and JUnit XML exports\n- Quality gates — block merges when quality drops\n- Auto-quarantine unreliable tests to keep CI green\n- Custom report branding (logo, title, footer)\n\n## Features\n\n### Core Analysis\n- **AI Failure Analysis** — AI-powered fix suggestions using your own Anthropic, OpenAI, or Gemini API key\n- **Flakiness Detection** — Historical tracking to identify unreliable tests (not single-run retries)\n- **Performance Regression Alerts** — Warns when tests get significantly slower than average\n- **Stability Scoring** — Composite health metrics (0-100 with grades A to F)\n- **Failure Clustering** — Group similar failures by error type with error previews and AI analysis\n- **Test Retry Analysis** — Track tests that frequently need retries\n\n### Interactive Dashboard\n- **Sidebar Navigation** — Overview, Tests, Trends, Comparison, Gallery views\n- **Theme Support** — 4 built-in themes (System, Light, Dark, High Contrast) with persistent preference\n- **Keyboard Shortcuts** — `1-5` switch views, `j/k` navigate tests, `f` focus search, `e` export summary\n- **Virtual Scroll** — Pagination for large test suites (500+ tests)\n- **Exportable Summary Card** — One-click export of test run summary\n\n### Test Details\n\n![Test Expanded](https://raw.githubusercontent.com/qa-gary-parker/playwright-smart-reporter/master/images/test-expanded-dark.png)\n*Expanded test card with step timeline, network logs, run history, and quarantine badge*\n\n- **Step Timing Breakdown** — Visual bars highlighting the slowest steps\n- **Flamechart Visualisation** — Colour-coded timeline bars (navigation, assertion, action, API, wait)\n- **Network Logs** — API calls with status codes, timing, and payload details (from trace files)\n- **Inline Trace Viewer** — View traces directly in the dashboard\n- **Screenshot Embedding** — Failure screenshots displayed inline\n- **Browser & Project Badges** — Shows which browser/project each test ran against\n- **Annotation Support** — `@slow`, `@fixme`, `@skip`, `@issue`, custom annotations with styled badges\n\n### Trend Analytics\n\n![Trend Charts](https://raw.githubusercontent.com/qa-gary-parker/playwright-smart-reporter/master/images/trends-dark.png)\n*Interactive trend charts with pass rate, duration, flaky tests, and slow test tracking*\n\n- **Moving Averages** — Overlay on pass rate and duration trends\n- **Anomaly Detection** — 2-sigma outlier detection with visual markers\n- **Clickable History** — Click any chart bar to drill into that historical run\n\n### Artifact Gallery\n\n![Gallery View](https://raw.githubusercontent.com/qa-gary-parker/playwright-smart-reporter/master/images/gallery-dark.png)\n*Visual grid of screenshots, videos, and trace files*\n\n### Trace Viewer\n\n![Tests View](https://raw.githubusercontent.com/qa-gary-parker/playwright-smart-reporter/master/images/tests-view-dark.png)\n*Test list with status badges, stability grades, quarantine indicators, and filtering*\n\n### Flakiness Detection\n\n![Comparison View](https://raw.githubusercontent.com/qa-gary-parker/playwright-smart-reporter/master/images/comparison-dark.png)\n*Run comparison showing new failures, performance changes, and baseline diffs*\n\nSmart Reporter tracks flakiness **across runs**, not within a single run:\n\n| | Playwright HTML Report | Smart Reporter |\n|---|---|---|\n| **Scope** | Single test run | Historical across multiple runs |\n| **Criteria** | Fails then passes on retry | Failed 30%+ of the time historically |\n| **Use Case** | Immediate retry success | Chronically unreliable tests |\n\nIndicators:\n- **Stable** (<10% failure rate) — **Unstable** (10-30%) — **Flaky** (>30%) — **New** (no history)\n\n## More Features\n\n### Themes\n\n6 additional themes beyond the 4 built-in themes (System, Light, Dark, High Contrast): **Ocean**, **Sunset**, **Dracula**, **Cyberpunk**, **Forest**, and **Rose**. Set via config:\n\n```typescript\nreporter: [\n  ['playwright-smart-reporter', {\n    outputFile: 'smart-report.html',\n    theme: { preset: 'dracula' },  // ocean, sunset, dracula, cyberpunk, forest, rose\n  }],\n]\n```\n\n### Executive PDF Export\n\nGenerate professional PDF reports in 3 themed variants: **Corporate**, **Minimal**, and **Dark**. Includes a style picker modal in the HTML report.\n\n```typescript\nreporter: [\n  ['playwright-smart-reporter', {\n    outputFile: 'smart-report.html',\n    exportPdf: true,\n  }],\n]\n```\n\n#### Non-Latin scripts (Arabic, CJK, ...)\n\nThe built-in PDF font (Helvetica) only covers Latin. If your test titles or project name use another script, embed a font that covers it:\n\n```typescript\nreporter: [\n  ['playwright-smart-reporter', {\n    exportPdf: true,\n    pdfFont: {\n      regular: './fonts/Cairo-Regular.ttf',\n      bold: './fonts/Cairo-Bold.ttf',     // optional, falls back to regular\n    },\n  }],\n]\n```\n\nPick a font that covers **both** your script and Latin (e.g. [Cairo](https://fonts.google.com/specimen/Cairo) for Arabic) — the report's own labels are English. Arabic renders with joined letters and right-to-left word order. Known limitation: strings mixing Arabic and Latin (e.g. an Arabic path containing `auth.spec.ts`) may display the runs in the wrong order — full bidirectional layout is not supported. `family`/`boldFamily` select a face inside a `.ttc` collection. Alternatively, `exportPdf: true` + `exportPdfFull: true` renders the whole HTML report via Chromium, which handles all scripts natively.\n\n### Quality Gates\n\nFail CI builds when test results don't meet your thresholds:\n\n```typescript\nreporter: [\n  ['playwright-smart-reporter', {\n    outputFile: 'smart-report.html',\n    qualityGates: {\n      minPassRate: 95,\n      maxFlakyRate: 5,\n      minStabilityGrade: 'B',\n    },\n  }],\n]\n```\n\nOr run as a standalone CLI check:\n\n```bash\nnpx playwright-smart-reporter gate --min-pass-rate 95 --max-flaky-rate 5\n```\n\nExit codes: `0` = all gates passed, `1` = gate failed (use in CI to block deploys).\n\n### Flaky Test Quarantine\n\nAutomatically detect and quarantine chronically flaky tests. Quarantined tests are tracked in a JSON file and can be excluded from gate failures:\n\n```typescript\nreporter: [\n  ['playwright-smart-reporter', {\n    outputFile: 'smart-report.html',\n    quarantine: {\n      enabled: true,\n      outputFile: '.smart-quarantine.json',\n      threshold: 0.3,  // flakiness score 0-1\n    },\n  }],\n]\n```\n\n### Custom Branding\n\nCustomise the report title, footer, and theme colours:\n\n```typescript\nreporter: [\n  ['playwright-smart-reporter', {\n    outputFile: 'smart-report.html',\n    branding: {\n      title: 'Acme Corp Test Report',\n      footer: 'Generated by QA Team',\n    },\n    theme: {\n      primary: '#6366f1',\n      accent: '#8b5cf6',\n      success: '#22c55e',\n      error: '#ef4444',\n      warning: '#f59e0b',\n    },\n  }],\n]\n```\n\n### JSON & JUnit Export\n\nExport test results in structured formats for external tools:\n\n```typescript\nreporter: [\n  ['playwright-smart-reporter', {\n    outputFile: 'smart-report.html',\n    exportJson: true,\n    exportJunit: true,\n  }],\n]\n```\n\n### AI Suite Health Summary\n\nAn AI-generated executive summary appears at the top of the Overview tab, combining failure clusters, flakiness trends, performance regressions, and historical pass rate data into natural-language insights. Enabled by default when an AI API key is set (see [AI Analysis](#ai-analysis)).\n\nTo disable (e.g., to save one AI request per run):\n\n```typescript\nreporter: [\n  ['playwright-smart-reporter', {\n    outputFile: 'smart-report.html',\n    enableAISuiteHealth: false,  // Disable AI health summary\n  }],\n]\n```\n\n## Configuration\n\n### Full Options Reference\n\n```typescript\nreporter: [\n  ['playwright-smart-reporter', {\n    // Core\n    outputFile: 'smart-report.html',\n    historyFile: 'test-history.json',\n    maxHistoryRuns: 10,\n    performanceThreshold: 0.2,\n\n    // Notifications\n    slackWebhook: process.env.SLACK_WEBHOOK_URL,\n    teamsWebhook: process.env.TEAMS_WEBHOOK_URL,\n\n    // Feature flags (all default to true unless noted)\n    enableRetryAnalysis: true,\n    enableFailureClustering: true,\n    enableStabilityScore: true,\n    enableGalleryView: true,\n    enableComparison: true,\n    enableAIRecommendations: true,\n    enableTrendsView: true,\n    enableTraceViewer: true,\n    enableHistoryDrilldown: false,\n    enableAISuiteHealth: true,      // AI health summary in Overview tab (uses 1 AI request)\n    enableNetworkLogs: true,\n\n    // Step and path options\n    filterPwApiSteps: false,\n    showExpectSteps: true,          // Show standalone expect() assertion steps\n    relativeToCwd: false,\n\n    // Multi-project\n    projectName: 'ui-tests',\n    runId: process.env.GITHUB_RUN_ID,\n\n    // Network logging\n    networkLogFilter: 'api.example.com',\n    networkLogExcludeAssets: true,\n    networkLogMaxEntries: 50,\n\n    // Thresholds\n    stabilityThreshold: 70,\n    retryFailureThreshold: 3,\n    baselineRunId: 'main-branch-baseline',\n    thresholds: {\n      flakinessStable: 0.1,\n      flakinessUnstable: 0.3,\n      performanceRegression: 0.2,\n      stabilityWeightFlakiness: 0.4,\n      stabilityWeightPerformance: 0.3,\n      stabilityWeightReliability: 0.3,\n      gradeA: 90,\n      gradeB: 80,\n      gradeC: 70,\n      gradeD: 60,\n    },\n\n    // Report customisation & exports\n    theme: { preset: 'default' },  // default, light, dark, high-contrast, ocean, sunset, dracula, cyberpunk, forest, rose\n    exportPdf: false,\n    pdfFont: undefined,         // { regular, bold?, family?, boldFamily? } — custom PDF font for non-Latin scripts\n    exportJson: false,\n    exportJunit: false,\n    qualityGates: {},           // { minPassRate, maxFlakyRate, minStabilityGrade }\n    quarantine: {},             // { enabled, outputFile, threshold }\n    branding: {},               // { logo, title, footer, hidePoweredBy }\n\n    // Advanced\n    cspSafe: false,\n    maxEmbeddedSize: 5 * 1024 * 1024,\n  }],\n]\n```\n\n### AI Analysis\n\nAI failure analysis uses your own API key. Set one of the following environment variables:\n\n```bash\nexport ANTHROPIC_API_KEY=your-key    # Claude (used first if multiple are set)\nexport OPENAI_API_KEY=your-key       # OpenAI\nexport GEMINI_API_KEY=your-key       # Google Gemini\n```\n\nWhen a test fails, the reporter sends the failure context to your chosen provider and includes fix suggestions in the report. Costs are billed by your provider — the reporter uses small, fast models (`claude-haiku-4-5`, `gpt-4o-mini`, `gemini-2.5-flash`) with short prompts, so per-run cost is minimal.\n\n**Claude subscription (no API key)?** Claude Pro/Team plans issue OAuth tokens, not API keys — putting one in `ANTHROPIC_API_KEY` fails with a 401. Instead, install [Claude Code](https://claude.com/claude-code) and set `CLAUDE_CODE_OAUTH_TOKEN`: the reporter then routes analysis through the local `claude` CLI, billed to your subscription. API keys take precedence when both are set.\n\nIf no API key is set, AI analysis is skipped and everything else works as normal — every failed test still gets a **Copy AI Prompt** button in the report, which copies a ready-to-paste prompt (error, call log, code frame) for use with any AI assistant.\n\n## Stability Grades\n\nComposite score (0-100) from three factors:\n\n| Factor | Weight | Description |\n|---|---|---|\n| Flakiness | 40% | Inverse of flakiness score |\n| Performance | 30% | Execution time consistency |\n| Reliability | 30% | Pass rate from history |\n\nGrades: **A** (90-100), **B** (80-89), **C** (70-79), **D** (60-69), **F** (<60). All weights and thresholds are configurable.\n\n## Step Filtering\n\n```typescript\nreporter: [\n  ['playwright-smart-reporter', {\n    filterPwApiSteps: true,  // Only show custom test.step() entries\n  }],\n]\n```\n\nWith filtering on, verbose `page.click()`, `page.fill()` steps are hidden — your named `test.step()` entries and `expect()` assertion steps remain.\n\nAll `expect()` assertion steps (top-level and nested) are shown by default and are kept even when `filterPwApiSteps` is on. Set `showExpectSteps: false` to hide them.\n\n## Multi-Project History\n\nIsolate history per test suite to prevent metric contamination:\n\n```typescript\nreporter: [\n  ['playwright-smart-reporter', {\n    projectName: 'api',\n    historyFile: 'reports/{project}/history.json',\n  }],\n]\n```\n\n## Trace Viewer\n\n### Inline Viewer\nClick **View** on any test with traces to open the built-in viewer with film strip, actions panel, before/after screenshots, network waterfall, console messages, and errors.\n\n### Local Server\n```bash\nnpx playwright-smart-reporter-serve smart-report.html\n```\nServes the report locally with full trace viewer support — no `file://` CORS issues.\n\n### CLI Viewer\n```bash\nnpx playwright-smart-reporter-view-trace ./traces/my-test-trace-0.zip\n```\n\n## Network Logs\n\nAutomatically extracted from Playwright trace files — no code changes required. Shows method, URL, status code, duration, and payload sizes. Requires tracing enabled:\n\n```typescript\nuse: {\n  trace: 'retain-on-failure',  // or 'on'\n}\n```\n\n## Annotations\n\n| Annotation | Badge | Annotation | Badge |\n|---|---|---|---|\n| `@slow` | Amber | `@fixme` / `@fix` | Pink |\n| `@skip` | Indigo | `@fail` | Red |\n| `@issue` / `@bug` | Red | `@flaky` | Orange |\n| `@todo` | Blue | Custom | Grey |\n\n```typescript\ntest('payment flow', async ({ page }) => {\n  test.slow();\n  test.info().annotations.push({ type: 'issue', description: 'JIRA-123' });\n});\n```\n\n## CI Integration\n\n### Persisting History\n\nHistory must persist between runs for flakiness detection and trends to work.\n\n#### GitHub Actions\n\n```yaml\n- uses: actions/cache@v4\n  with:\n    path: test-history.json\n    key: test-history-${{ github.ref }}\n    restore-keys: test-history-\n\n- run: npx playwright test\n\n- uses: actions/cache/save@v4\n  if: always()\n  with:\n    path: test-history.json\n    key: test-history-${{ github.ref }}-${{ github.run_id }}\n```\n\n#### GitLab CI\n\n```yaml\ntest:\n  cache:\n    key: test-history-$CI_COMMIT_REF_SLUG\n    paths: [test-history.json]\n    policy: pull-push\n  script: npx playwright test\n```\n\n#### CircleCI\n\n```yaml\n- restore_cache:\n    keys: [test-history-{{ .Branch }}, test-history-]\n- run: npx playwright test\n- save_cache:\n    key: test-history-{{ .Branch }}-{{ .Revision }}\n    paths: [test-history.json]\n```\n\n#### Azure DevOps\n\n```yaml\nsteps:\n  - task: Cache@2\n    inputs:\n      key: 'test-history | \"$(Build.SourceBranchName)\"'\n      restoreKeys: 'test-history |'\n      path: test-history.json\n\n  - script: npx playwright test\n    continueOnError: true\n\n  - task: PublishPipelineArtifact@1\n    inputs:\n      targetPath: smart-report.html\n      artifact: playwright-smart-report\n    condition: always()\n```\n\n### CI Auto-Detection\n\nThe reporter automatically detects GitHub Actions, GitLab CI, CircleCI, Jenkins, Azure DevOps, and Buildkite. Branch, commit SHA, and build ID are displayed in the report header.\n\n### Quality Gates in CI\n\n```yaml\n# GitHub Actions example\n- run: npx playwright test\n  continue-on-error: true\n\n- run: npx playwright-smart-reporter gate --min-pass-rate 95 --max-flaky-rate 5\n  # Exits non-zero if gates fail — blocks the pipeline\n```\n\n### Sharded Runs\n\nFor consistent history across parallel shards, set `runId`:\n\n```typescript\nreporter: [\n  ['playwright-smart-reporter', {\n    runId: process.env.GITHUB_RUN_ID,\n  }],\n]\n```\n\n### Merging History from Multiple Machines\n\n```bash\nnpx playwright-smart-reporter-merge-history \\\n  shard1/test-history.json \\\n  shard2/test-history.json \\\n  -o merged-history.json \\\n  --max-runs 10\n```\n\n## CSP-Safe Mode\n\nFor environments with strict Content Security Policy (e.g., Jenkins):\n\n```typescript\nreporter: [\n  ['playwright-smart-reporter', { cspSafe: true }],\n]\n```\n\nWhen enabled, the reporter generates companion `.css` and `.js` files alongside the HTML report. The HTML references these via `<link rel=\"stylesheet\">` and `<script src defer>` instead of inline `<style>` and `<script>` tags. Report data is embedded in `<script type=\"application/json\">` tags (not executed by the browser). System fonts are used instead of Google Fonts.\n\n**Jenkins CSP configuration** — Add to Jenkins script console or startup:\n\n```\nSystem.setProperty(\"hudson.model.DirectoryBrowserSupport.CSP\",\n  \"script-src 'self' 'unsafe-inline'; style-src 'self'; img-src 'self';\")\n```\n\n> **Note**: Inline event handlers (`onclick`, etc.) still require `'unsafe-inline'` in `script-src`. Full event delegation is planned for a future release.\n\n## Cucumber Integration\n\nWorks with Playwright + Cucumber frameworks:\n\n```typescript\nimport { defineBddConfig } from 'playwright-bdd';\n\nconst testDir = defineBddConfig({\n  features: 'features/**/*.feature',\n  steps: 'steps/**/*.ts',\n});\n\nexport default defineConfig({\n  testDir,\n  reporter: [['playwright-smart-reporter']],\n});\n```\n\n## FAQ\n\n### Is this really free?\n\nYes. Everything is MIT-licensed and included — no tiers, no license keys. AI analysis is the only feature with an external cost, and that's billed directly by your AI provider via your own API key.\n\n### RangeError with large test suites?\n\nFixed in v1.0.6. Update: `npm install playwright-smart-reporter@latest`\n\n### Different flakiness than Playwright's HTML report?\n\nThey use different methodologies — see [Flakiness Detection](#flakiness-detection) above.\n\n### Report too large or browser hangs?\n\nEnable `cspSafe: true` to save attachments as files instead of embedding, or reduce `maxHistoryRuns`. Use `maxEmbeddedSize` to control the inline trace threshold.\n\n## Troubleshooting\n\n| Problem | Cause | Fix |\n|---|---|---|\n| No history data | History file missing or wrong path | Check `historyFile` path, use CI caching |\n| No network logs | Tracing not enabled | Add `trace: 'retain-on-failure'` to config |\n| No AI suggestions | No AI API key set | Set `ANTHROPIC_API_KEY`, `OPENAI_API_KEY`, or `GEMINI_API_KEY` (or `CLAUDE_CODE_OAUTH_TOKEN` with Claude Code installed) |\n| `Anthropic API error: 401` | Claude subscription OAuth token used as API key | Unset `ANTHROPIC_API_KEY`; set `CLAUDE_CODE_OAUTH_TOKEN` to use the Claude Code CLI |\n| Mixed project metrics | Shared history file | Use `projectName` to isolate |\n| Quality gate not failing CI | Gate not run as separate step | Run `npx playwright-smart-reporter gate` as its own CI step |\n\n## Development\n\n```bash\nnpm install\nnpm run build\nnpm test\nnpm run test:demo\n```\n\n## Contributors\n\n- [Gary Parker](https://github.com/qa-gary-parker) — Creator and maintainer\n- [Filip Gajic](https://github.com/Morph93) — v1.0.0 UI redesign\n- [Liam Childs](https://github.com/liamchilds) — Parameterized project support\n\n## License\n\nMIT\n","readmeFilename":"README.md"}