{"_id":"@clipboard-health/playwright-flake-linter","_rev":"22-918da028e8c16da25c0afe621c0160c2","name":"@clipboard-health/playwright-flake-linter","dist-tags":{"latest":"1.3.12"},"versions":{"1.0.0":{"name":"@clipboard-health/playwright-flake-linter","version":"1.0.0","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.0.0","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"db744d9e0e6943628b2855cfac83b3779334d0d4","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.0.0.tgz","fileCount":20,"integrity":"sha512-uJR4XLa3Jy1MejCU5A9ZZLRfVYHDBdHp5PWpVfTt1QjtDfg7wlhq0Z3aNPy8ioeQ0uHOn5i8suSBDEsWBBsSDg==","signatures":[{"sig":"MEUCIFX3/8PaAOYk7uyJSjeS5FLJt1pkFPRLg3CCT0xloubcAiEAyP6H+5JlWIrhhqQePxfsxcWOlp7FE6IKUrmnCGbaebs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70581},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"eef1f20c446e47e4330bc3efc7bd28b1cc91e138","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.0.0_1784223299065_0.7313452289660287","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@clipboard-health/playwright-flake-linter","version":"1.0.1","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.0.1","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"d0b0108a4c7e047ff1dec7786a127230e290b144","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.0.1.tgz","fileCount":20,"integrity":"sha512-PSeAgEp+BO0ClnUO1mTvdTgXByABtbP/T6Ce3UdQfClW6Lxag85Z9SlOGOYWLjzj8YoYQq6Ur0qjEBYDomiENQ==","signatures":[{"sig":"MEQCICIOUkb6kLzCwVYBiizUrKjsZ1ytaYX/q4Qi7sYzRf/NAiAN6uTcvLXBzCF8/norEGpcT1BGcMIG52SlI9ZOMjaDHA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70581},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"3dde00aed52a96064f0f8d21ac54def2eb935350","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.0.1_1784421722829_0.251957875564788","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@clipboard-health/playwright-flake-linter","version":"1.0.2","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.0.2","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"e96f97bff766f798cc5069775dc35c66e5c03023","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.0.2.tgz","fileCount":20,"integrity":"sha512-+oIe8ql7T+C+GixO8tOMa6XA4VHvaSFH6HaKGLg+BJKO1knv03N1/uLJZkl45GXh0yyxOEEgRUHDw3O2b9a4Lw==","signatures":[{"sig":"MEUCIET4s9/ZHnRDwFsnXWggmIUg7KEwz6jlxKy6F13b4BQJAiEAl5hbINygh/2ZGNf1bGbjh53++fmgM6JddBT7DLn6cI0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70581},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"608040a2a18b9aed58660f558297b14b351cf254","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.0.2_1784597587549_0.2751475251116453","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@clipboard-health/playwright-flake-linter","version":"1.0.3","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.0.3","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"2fc583f8acc775cab68e875df22f6ff72a3d7edb","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.0.3.tgz","fileCount":20,"integrity":"sha512-w4GY7tCl7D8B2SUOtuCkSJzM1HPG2/dBmBPgadMktwpuj27sJUqTXjWRM8LtaIzjxy76K4wFDuZAxWjZkxE42g==","signatures":[{"sig":"MEQCIGsX7OxgpJI6cpqMN/i8JNTcSENMWFGvYEmHFinyN0k9AiACcO+Utpf/3e3RfKmCbDqOId6cBp+vTjFqN1xXsaNDUA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70581},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"bd2c7f20590a5f92f6f2b3354b15423d98cd726b","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.0.3_1785261991232_0.2929950694874044","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@clipboard-health/playwright-flake-linter","version":"1.1.0","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.1.0","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"88d546c3e7e2abcfc67e10d35b05c66c5c85cfb5","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.1.0.tgz","fileCount":20,"integrity":"sha512-J2cPP9QLwMs1/62511u4BpMX7t6qwmapHOKyf1ig3PHFnxYTLNMRi+swu4K0jU6dCevVTgkDP8Qr6db5GBr1eA==","signatures":[{"sig":"MEYCIQDNt7XtcM4hqqAhJ+1fA1EwVakYEYyYw+EKji4splduUgIhAP9afVOh6dDlAkI99LAzureiIrSuFb3VlkLIk51Nu4TG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70581},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"e97e5d199f90160e5f412d060a27be0f4a39904f","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.1.0_1786637471948_0.5294491884901786","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@clipboard-health/playwright-flake-linter","version":"1.1.1","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.1.1","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"bb79e077c476aeb8379249f386b19085d03396d4","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.1.1.tgz","fileCount":20,"integrity":"sha512-nFnHSt3waTNuxJSDaZWdJwdt8xcKP4VNg9ZYx9YjzZyCNbxpkXh6zWsP0xbEyVq/HlCXFMnfRdI1Hw+bmKSVhQ==","signatures":[{"sig":"MEQCIGDFNWBklxVGUkX+75Km2qbJUpQ6A/JVItsFJHMah3M+AiB8vNqadmbadh/FwNnAaHQFDolBDq1AgqOB+x6VJw2Upw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70581},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"521b1e3182c6bb4309fc4b45a57238282a3274a4","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.1.1_1786677377951_0.8654392226832073","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@clipboard-health/playwright-flake-linter","version":"1.2.0","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.2.0","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"c69c1e7e1be055a1a05197940dd06420e0b4704d","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.2.0.tgz","fileCount":20,"integrity":"sha512-qRs9vp4hhW9GPdpu3jhCaXKWwiIUHFdTyYMRQTvOfkZqYZVg8bgP8YmXS9o6ZDLuRhJ1irAS2EtCUZgOon0bBw==","signatures":[{"sig":"MEUCIQC1g3Jbx+2+0dm8SPjYf/MLxCQaBPgDHIHUk+f1GrXHGQIgdmGsZkLy1BBP4WdpfiqJWR077QIUFFsI3YgCQlW9MsE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70581},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"d5e95a76e3359d6a5f99879bab6b2592008f96b8","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.2.0_1786734067435_0.6911844925668282","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@clipboard-health/playwright-flake-linter","version":"1.2.1","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.2.1","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"bbc8915d258014a010a1b6082aeddd6c2fbc0d7b","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.2.1.tgz","fileCount":20,"integrity":"sha512-jKbptInOCi+NpP+O7ZweBZf0M2+gkkYyc7INklbpWLkZxiq4oRZY5EP9Rn7+XQTXtosvsY7X+PEtOVvhv67IvA==","signatures":[{"sig":"MEUCIQCBtLdV7s4uk29SO4g9xP1vydf459CYOibel9lM5bVJsgIgMjK5pxCZd0NDiVw1y5IsK+55Q6Y8oosoO0iBbWsKI0o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70581},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"10e7a05a2ef3c0e19efb9beb6f6315603c63da4f","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.2.1_1786757910087_0.26817464169714","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"@clipboard-health/playwright-flake-linter","version":"1.2.2","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.2.2","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"465d15f66e9469d3a3e05ad3fe66167539a7c1a5","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.2.2.tgz","fileCount":20,"integrity":"sha512-JAx6WLktm+cXqJi6C0rSjlglRIgUff4y4dh4lNz/5c8VLLoCaum1uFRPKmz2wWyNN+4VYJeRT3Af3R4uj92SVA==","signatures":[{"sig":"MEQCIG8dJD244sRi7XAUjfLIaHdMpJ+TGyB3G9nd9pLiNjIsAiBQFBSPSnBrfIh4q816fo2D6Df1kJ9dn0IJNinoIUTjXw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70581},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"76d466e73f99199b65d9c53b68040cd0d28f5ed4","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.2.2_1787024114267_0.49537457292590625","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@clipboard-health/playwright-flake-linter","version":"1.3.0","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.3.0","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"a69ce9d9ee6e0ff717c68db1987c460856bef126","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.3.0.tgz","fileCount":20,"integrity":"sha512-skDUA/yXNBfRFg54oGg8+HRX9YVVrdLT9mgMGXuxOSPVrxYTbUAowsiRwyfTgF6LsdK0bxKaRGpCDWHHwNIt/w==","signatures":[{"sig":"MEQCIEwuuRADZVWjEUpu5S0l5BCfVh48eTwpZNzngONfCPMKAiBwBr+/c9+pgEOId3C+7VPsy+cPcQwM57VVBUXG99/2Mw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70581},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"a5739c7cad398efd410b05c174d3a0705c40165a","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.3.0_1787674482219_0.04608149213700252","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@clipboard-health/playwright-flake-linter","version":"1.3.1","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.3.1","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"63e79a48f972a27cc7c35435bf6d251b920f4ab3","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.3.1.tgz","fileCount":20,"integrity":"sha512-Vbb7cic5LD8KHX9LRn/azf9/ssT3N5QAOY5OGAhE76BLYfs3f31D37v8wbswmRSk4gFpEfDtscgJrMzyW9IjhA==","signatures":[{"sig":"MEQCIEM8mkA2NgJotyCT1wGdVV27pYH5tSKhchUuvMRhNzwJAiAmldOpl2viaK0O9CRZEZutYh4tdAGMisl/eEl9n4C45w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70581},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"d6119c01141c0b24fd55b2e2e61535f727cd65c7","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.3.1_1787970948600_0.7190797969993694","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"@clipboard-health/playwright-flake-linter","version":"1.3.2","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.3.2","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"4d80ef88a2267b7b734a3245eb97669bd7dde547","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.3.2.tgz","fileCount":20,"integrity":"sha512-OoJaI6h+0oxAYcF5Yni2ENMeCSgG3JmsQwTp+YjRzDS9fSdxhkFmlA05Fgl7Aa+tUj2rDEGcXkElt1jL4Uzr1A==","signatures":[{"sig":"MEYCIQCW/yLe2QUdqXxbui9v7rSqVL/DOYIN8s0hlmeD5cmRQgIhAOZF6nhwJgHueGp5c8iipDcvfX0zKG176JTQod83p9hq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70581},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"0b0d9b46cb6225c6331649723719a6e8ec4f4b24","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.3.2_1788139261352_0.0323009708975297","host":"s3://npm-registry-packages-npm-production"}},"1.3.3":{"name":"@clipboard-health/playwright-flake-linter","version":"1.3.3","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.3.3","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"bbabca6160d1a768136d27b619848fa78a02b6d3","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.3.3.tgz","fileCount":20,"integrity":"sha512-BiYk4vSgOZYjfzpPjsBxjc8QzZBRbhjSlR9FtEKyikMFhYISunKTXsSv2oAbBHsDbgohOow8mPZNHQ5phJF+6g==","signatures":[{"sig":"MEQCIBhCsw9EP5pdzPYkLSE1EPlTPF6MX9kf52WgcL7l838eAiAidyXj83KF3jrl4ixWD2Db1MBafxm/rUr3iQ8l6fyi5A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70581},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"24071eaba530e9e193d8b8dc6ba589d4988195f6","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.3.3_1788315660605_0.3595136405626973","host":"s3://npm-registry-packages-npm-production"}},"1.3.4":{"name":"@clipboard-health/playwright-flake-linter","version":"1.3.4","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.3.4","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"9ba0307ee86c6a9208975d5b14f030ba26c1495d","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.3.4.tgz","fileCount":20,"integrity":"sha512-1pgMZJW9T9sxOh29UrgyEc2w+En0fnFKJzE0QbMQLcTPHQ9vp0ZkCCiyOEXaO43LVPNb7m5WAG13SIMMwhg4fQ==","signatures":[{"sig":"MEUCIDliAihyUSyT9LYQS78VLH4Fq3t33HR1MtZfxfQnJYuQAiEAu1ElxwKX1YrVfSjqqe/QL9DQD72sGKjAhq1/GXZDkNQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70581},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"198382670c4a8f1576b38cd659885242d42f8b59","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.3.4_1789099012322_0.9617305681748285","host":"s3://npm-registry-packages-npm-production"}},"1.3.5":{"name":"@clipboard-health/playwright-flake-linter","version":"1.3.5","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.3.5","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"c8a1e258f6f8719698503adfa17348417330b101","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.3.5.tgz","fileCount":20,"integrity":"sha512-0gTH73/63l1K1J2RDd36MMyRLKAVUBYm/VNM32ARhn84tjtfvOarIY0ds7hi4aKyZR+fTatHWJEvHBqtpQW0CA==","signatures":[{"sig":"MEUCIQCiVPnLvC5U1Q/smIibBfcooQ6xRGowP7EthoT8kpNWlAIgKkt2D0y17FaVAG+KxFZx5F0bnZ3A1K3ZXsrkchfUQo4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70581},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"327e1272d55e2a6a00ab34ff54d83e3ea1677738","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.3.5_1789262600320_0.17687410943096205","host":"s3://npm-registry-packages-npm-production"}},"1.3.6":{"name":"@clipboard-health/playwright-flake-linter","version":"1.3.6","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.3.6","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"334f8573c095f3bd45b2cb0645b1ce6672090341","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.3.6.tgz","fileCount":20,"integrity":"sha512-dGsIeJ6998TWORas577RISNtVwBSMGSXNStC7H0V9lku3bUuXQdj7Ttd0wltJ3xbuT8D9LILfw/i+izG0mwcSA==","signatures":[{"sig":"MEUCIFVtpa+oSlFVvta3Tkzpp+wXrg7D1TsaROPjr7LYb2VRAiEAv7IbleeBLpIlhPGEQHtWKziFZxjFzWhVV6w+KgnCai8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCXGmsVePoXp5R4Ys9movFErqUeD7H3X45YxT9acUWQ3gIgVU+w1/yJPl0yewIu9HjRFl/8j1qGqed0EeKo+a4VqWQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70581},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"c8c817708de266046a916c9a3608f39561020e32","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.3.6_1789676212210_0.8558604934599023","host":"s3://npm-registry-packages-npm-production"}},"1.3.7":{"name":"@clipboard-health/playwright-flake-linter","version":"1.3.7","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.3.7","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"9277a46addac9b699445e7e941fd15672673f0b3","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.3.7.tgz","fileCount":20,"integrity":"sha512-73C/9uNq1Y8//qLoNaJ6N+o8uzugROGghlSn0dYXpalvJxbeRqV9MvalqG2VnHqRoApwbLQ4cZFHkin6dqvxew==","signatures":[{"sig":"MEYCIQCMJhWoh7fdTbaYZn4lvlXnq5FFhGMqKrP7hEydFG1nCgIhAIVjIeLQKoxgz7pZOLPfr1DxRchCYphgwFXWsRMVhxnZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDLb0pmMWe84IIo1wTf7xZYiO2sXQ6AkOYu3DeTWfPH+wIhALklJwpHznjxWzvnJweJ2VhqAuKkEf7sUJD+wTuu/8Aj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70581},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"a0b61b921876421d6f78d4056453b60c895f9609","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.3.7_1790128553137_0.17732036561651832","host":"s3://npm-registry-packages-npm-production"}},"1.3.8":{"name":"@clipboard-health/playwright-flake-linter","version":"1.3.8","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.3.8","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"a8bbb36ae44b40967b75f5719c0b34d6462c1c5e","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.3.8.tgz","fileCount":20,"integrity":"sha512-9YrVJ5pg5OSG86w73igZZZppHkVG3TiZZw2SxqV3nxHEpvlDzkg+yTtBUZJFmlHoFUOEbmyHbkrP2mq1hMOrlA==","signatures":[{"sig":"MEQCIB4gXcBDsd7vvmpPviSRAK50LfPuCUruKb9lnIp5pXEbAiAQBTJ5rduNMNteX2tTW6Smu8nTjpSq4585eNRYXE57Bw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCt4T5kRQd3R/YPPrnznc84C2AfAL3gotgIl/cN51mV5QIgO7aG9euyzVg+1yq3InwxtEMIIgCy6jH6FyoisfdFRlA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70581},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"aea894dabc2efe6631bc8bcc3654e966c2d6dab6","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.3.8_1790435076562_0.3484323191591163","host":"s3://npm-registry-packages-npm-production"}},"1.3.9":{"name":"@clipboard-health/playwright-flake-linter","version":"1.3.9","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.3.9","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"0c4e5e4192e88b3ed119cc440039d6431897bbae","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.3.9.tgz","fileCount":20,"integrity":"sha512-8477MXH7y+SoA0Q5zIEwna5Mo2n58brWaHmpTUb3X6N6IqH37N6Gl9sjSF/5xZ/D7YPe1X7rNAnAyhcAPOaOpQ==","signatures":[{"sig":"MEUCIG6HhkozDyMMmtZ1tuVz6ywQoQt1D8b7CIJ65qr+cYLJAiEAtcEuuGPRT8b7n/bsJOtzsjoY++OZYb/ZE4UfInELOyU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQD2STKhyM0EgeqqraTddJbcy8YQc0U+w2vKFEi+rcwfAQIhAJNq89oS87VhbfjLGaD5Nt+708W5coZ98hALhbLdKgNc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70581},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"aa4297fb2a5a84c744380a5ee8a71ce2775204c8","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.3.9_1790558572028_0.005529326118885791","host":"s3://npm-registry-packages-npm-production"}},"1.3.10":{"name":"@clipboard-health/playwright-flake-linter","version":"1.3.10","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.3.10","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"36872516204a6e9aa7595801ad506f4c503a70ec","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.3.10.tgz","fileCount":20,"integrity":"sha512-YftJoAovsyPb1WikrL9NDAuQDUIDDeopxrDJhse2dNc6B3fj7Zs+JstkCSVS0BnFPNMhNkOJ4l682gR5McvhOw==","signatures":[{"sig":"MEUCIQDpI3KUUFf+x3KSk1Y4f3HylgMENKes+aA6T9v+iflKGQIge4pmOnrrgy+uW9UuGiLhqOyr2SDW4gtfX7nD+J4zPuM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIBOY9GESyonPRXjMaJ5gGtHyrK2xZHjhJ8Qa6gIXEZP6AiBnTLrMpXVvlwIn8rciRl3VjfcAA6+3KQwTwxNsc0Gy4A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70582},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"9c75d3308ee3c132080ff403cff22988782685c1","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.3.10_1790958071236_0.3886810212702565","host":"s3://npm-registry-packages-npm-production"}},"1.3.11":{"name":"@clipboard-health/playwright-flake-linter","version":"1.3.11","keywords":["flaky-tests","lint","playwright","testing"],"license":"MIT","_id":"@clipboard-health/playwright-flake-linter@1.3.11","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"homepage":"https://github.com/ClipboardHealth/core-utils#readme","bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"bin":{"playwright-flake-lint":"src/bin/cli.js"},"dist":{"shasum":"2b25bfcd0c40a290bdde83f8ba8652037dd49c29","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.3.11.tgz","fileCount":20,"integrity":"sha512-jjtZVu9OR7gf1lqNL8AnChTiitNNw4JGLOQl3d7vSDHtc2Sxwio1QR3KF/c3956CQQaUHdy2w62Qn6bMXxHdfg==","signatures":[{"sig":"MEYCIQCA+c6HniB5XB5naThySIgDPyPC9XdHQHfj+a14byudgQIhAPl4+moEqJHRlxXqaCkbkHfLZ54Hz73DkEvdBB6vj/yC","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDJxb/+ougQC6WQio6jPvC1XopS72Koy/Kmw5DWJtI7+AiBxmSKxoTLr5/Un4ybO/oo+YgvL1jfy78dpRhJo4wYf5g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70582},"main":"./src/index.js","type":"commonjs","types":"./src/index.d.ts","gitHead":"fecc02150d627a0251a8b0ad9112b79c2a61577c","typings":"./src/index.d.ts","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/playwright-flake-linter_1.3.11_1790963738617_0.670792535205204","host":"s3://npm-registry-packages-npm-production"}},"1.3.12":{"_id":"@clipboard-health/playwright-flake-linter@1.3.12","bin":{"playwright-flake-lint":"src/bin/cli.js"},"bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"dist":{"shasum":"91f941a0677f5bc3ec415bed58972f79061f4247","tarball":"https://registry.npmjs.org/@clipboard-health/playwright-flake-linter/-/playwright-flake-linter-1.3.12.tgz","fileCount":20,"integrity":"sha512-E4HrgSeuBuqoF1XKj/dOFsIoQY2PVf/X8vzrIpJjUH8j3c19bi82aVf7vwverGguBTER3DRLm+sH52c7N2h8QQ==","signatures":[{"sig":"MEUCIQD+tc4HBZ6pUqzkHf1QBY/uxhdLgT2Sru7DQltOOzKdwAIgIjKOWwRosDIqGropJhGJJV5+qYx/yd0HbE/jeoExlCs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQC+lkTQS1xvMubHpmljBpHLxOFiDt5Pz1fvGil7tuZfmAIhAMeK3E2iPkrr++NQueK97yeArKSdd7sxV3wMIPJlX6Cu"}],"unpackedSize":70582},"main":"./src/index.js","name":"@clipboard-health/playwright-flake-linter","type":"commonjs","types":"./src/index.d.ts","gitHead":"9705e2bedf40be299fd8b05b8fa27351d635ebc8","license":"MIT","typings":"./src/index.d.ts","version":"1.3.12","_npmUser":{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},"homepage":"https://github.com/ClipboardHealth/core-utils#readme","keywords":["flaky-tests","lint","playwright","testing"],"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"_npmVersion":"11.12.1","description":"Shared configurable checks for Playwright flake anti-patterns.","directories":{},"maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"_nodeVersion":"24.15.0","dependencies":{"glob":"13.0.6","tslib":"2.8.1","typescript":"5.9.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/playwright-flake-linter_1.3.12_1791225823879_0.036768226225397216"}}},"time":{"created":"2026-07-16T17:34:58.879Z","modified":"2026-10-05T18:43:44.137Z","1.0.0":"2026-07-16T17:34:59.201Z","1.0.1":"2026-07-19T00:42:02.998Z","1.0.2":"2026-07-21T01:33:07.700Z","1.0.3":"2026-07-28T18:06:31.383Z","1.1.0":"2026-08-13T16:11:12.119Z","1.1.1":"2026-08-14T03:16:18.113Z","1.2.0":"2026-08-14T19:01:07.575Z","1.2.1":"2026-08-15T01:38:30.252Z","1.2.2":"2026-08-18T03:35:14.419Z","1.3.0":"2026-08-25T16:14:42.403Z","1.3.1":"2026-08-29T02:35:48.753Z","1.3.2":"2026-08-31T01:21:01.508Z","1.3.3":"2026-09-02T02:21:00.769Z","1.3.4":"2026-09-11T03:56:52.456Z","1.3.5":"2026-09-13T01:23:20.455Z","1.3.6":"2026-09-17T20:16:52.311Z","1.3.7":"2026-09-23T01:55:53.218Z","1.3.8":"2026-09-26T15:04:36.650Z","1.3.9":"2026-09-28T01:22:52.117Z","1.3.10":"2026-10-02T16:21:11.319Z","1.3.11":"2026-10-02T17:55:38.697Z","1.3.12":"2026-10-05T18:43:43.960Z"},"bugs":{"url":"https://github.com/ClipboardHealth/core-utils/issues"},"license":"MIT","homepage":"https://github.com/ClipboardHealth/core-utils#readme","keywords":["flaky-tests","lint","playwright","testing"],"repository":{"url":"git+https://github.com/ClipboardHealth/core-utils.git","type":"git","directory":"packages/playwright-flake-linter"},"description":"Shared configurable checks for Playwright flake anti-patterns.","maintainers":[{"name":"mikecookcbh","email":"mike.cook@clipboardhealth.com"},{"name":"sharedenginner_cbh","email":"shared.engineer@clipboardhealth.com"},{"name":"user_engineer","email":"user_engineer@clipboardhealth.com"},{"name":"clipboard_engineering","email":"shared.engineer+npm@clipboardhealth.com"}],"readme":"# @clipboard-health/playwright-flake-linter\n\nShared, configurable TypeScript AST checks for Playwright flake anti-patterns.\nThe rule implementation lives in this package; consuming repositories provide\nonly their paths, helper names, mechanism names, and justified exceptions.\n\n## Install\n\n```bash\nnpm install --save-dev @clipboard-health/playwright-flake-linter\n```\n\nTypeScript is a runtime dependency because the checker uses the compiler API;\n`glob` provides the repository-standard source discovery used by `embedex`.\nBoth are actively maintained, commercially compatible (Apache-2.0 and ISC),\nalready standardized in this monorepo, and the CLI is not included in\napplication bundles.\n\n## Configure\n\nCreate `playwright-flake-lint.config.mjs` at the repository root:\n\n```javascript\nexport default {\n  scanRoots: [\"playwright\"],\n  hardenedIdentityHelperNames: [\"generateRandomUserEmail\"],\n  identityHelperMinimumLengths: {\n    generateRandomAlphaNumericString: 24,\n    generateRandomString: 26,\n  },\n  retryHelperNames: [\"retry\"],\n  specificRequestMatcherNames: [\"isMatchingRequest\"],\n  transientClassifierNamePatterns: [\"^isRetryable\", \"retryClassification\"],\n  undiscriminatingRetryHelperNames: [\"retryUntilPassOrTimeout\", \"toPass\"],\n  sharedReadinessMechanisms: [\n    {\n      name: \"Home Health response readiness\",\n      filePathPattern: \"playwright/e2e/homeHealth/.*\\\\.spec\\\\.ts$\",\n      directCallNames: [\"waitForResponse\"],\n      sharedHelperNames: [\"waitForHomeHealthResponse\"],\n    },\n  ],\n};\n```\n\nThe mobile repository can use its own genuine names without changing a rule:\n\n```javascript\nexport default {\n  scanRoots: [\"playwright\"],\n  identityHelperMinimumLengths: {\n    mobileRandomSuffix: 32,\n  },\n  retryHelperNames: [\"retryMobileAction\"],\n  specificRequestMatcherNames: [\"matchesMobileRequest\"],\n  transientClassifierNamePatterns: [\"^isTransientMobile\"],\n  sharedReadinessMechanisms: [\n    {\n      name: \"BottomSheet readiness\",\n      filePathPattern: \"playwright/e2e/sheets/.*\\\\.spec\\\\.ts$\",\n      directCallNames: [\"waitForResponse\"],\n      sharedHelperNames: [\"waitForBottomSheet\"],\n    },\n  ],\n};\n```\n\nAll pattern fields are JavaScript regular-expression source strings. Optional\nconfiguration:\n\n| Field                              | Purpose                                                             |\n| ---------------------------------- | ------------------------------------------------------------------- |\n| `allowlist`                        | Reason-required repository exceptions by rule and file pattern      |\n| `hardenedIdentityHelperNames`      | Identity helpers that are safe without a length argument            |\n| `identityHelperMinimumLengths`     | Repository random-helper names and their safe minimum lengths       |\n| `identityNamePattern`              | Names treated as parallel-worker-sensitive identities               |\n| `responseWaitCallNames`            | Repository response-wait utility names                              |\n| `retryHelperNames`                 | Retry utilities whose callbacks must classify transient failures    |\n| `sharedReadinessMechanisms`        | File/mechanism registry mapping direct gates to shared helpers      |\n| `specificRequestMatcherNames`      | Delegated helpers that fully discriminate a response request        |\n| `specFilePattern`                  | Files where fixed-sleep checks apply                                |\n| `transientClassifierNamePatterns`  | Classifier names accepted inside retry callbacks                    |\n| `undiscriminatingRetryHelperNames` | Utilities that inherently retry any failure and are always rejected |\n\n`sharedReadinessMechanisms[].name` is the diagnostic label, so repositories can\nuse their native terminology such as `Dialog` or `BottomSheet`.\n\n## Wire into CI\n\nAdd the executable to the repository's existing verification chain:\n\n```json\n{\n  \"scripts\": {\n    \"architecture:check\": \"existing-checks && playwright-flake-lint\"\n  }\n}\n```\n\nUse a non-default config location with\n`playwright-flake-lint --config path/to/config.mjs`.\n\n## Rules\n\n| Rule ID                | Anti-pattern                                                     | Required alternative                                                 |\n| ---------------------- | ---------------------------------------------------------------- | -------------------------------------------------------------------- |\n| `fixed-sleep`          | `waitForTimeout` or `setTimeout` delays in specs                 | Rubric B2: use a deterministic readiness signal                      |\n| `response-wait`        | Status/`.ok()` response predicates without specific request data | Rubric B2: match method, URL, and a discriminating request predicate |\n| `retry-classification` | Retry utilities invoked without transient-only classification    | Rubric B1: classify transient failures and fail fast otherwise       |\n| `test-data-identity`   | Low-entropy identities or bypasses of hardened random helpers    | Rubric A2: use configured hardened or UUID-backed identities         |\n| `shared-readiness`     | Per-spec readiness gates where a shared mechanism helper exists  | Rubric A1: use or extend the configured shared helper                |\n\n## Allowlisting\n\nPrefer fixing a violation. A justified inline exception must immediately\nprecede the violating statement and include a reason:\n\n```typescript\n// flake-lint-allow fixed-sleep -- The timer fixture verifies elapsed product time.\nawait page.waitForTimeout(100);\n```\n\nA repository-level exception also requires a reason:\n\n```javascript\nexport default {\n  scanRoots: [\"playwright\"],\n  allowlist: [\n    {\n      ruleId: \"fixed-sleep\",\n      filePathPattern: \"playwright/e2e/legacy/timer\\\\.spec\\\\.ts$\",\n      reason: \"The timer fixture verifies elapsed product time.\",\n    },\n  ],\n};\n```\n\nComments or config entries without a non-empty reason do not suppress a\nviolation.\n\n## Future shared rules\n\nThe existing per-repository Dialog/query-list checks are a candidate for this\npackage. Their component-name difference (`Dialog` in admin and `BottomSheet`\nin mobile) belongs in repository config when that rule is migrated; this\npackage does not change those checks yet.\n","readmeFilename":"README.md"}