[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6D6KWKJDN04TZ5KA6HC5YFD":3,"skill-same:01M6D6KWKJDN04TZ5KA6HC5YFD":66},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":32,"linkOnly":33,"markdownContent":34,"markdownBody":35,"frontMatter":36,"refName":37,"commitSha":38,"skillDirectory":39,"forksCount":40,"repositoryHtmlUrl":41,"repositoryHomepageUrl":6,"ownerHtmlUrl":42,"ownerBlogUrl":43,"ownerDescription":44,"updatedAt":45,"install":46,"resources":59},"01M6D6KWKJDN04TZ5KA6HC5YFD","fix",null,"Fix failing or flaky Playwright tests. Use when user says \"fix test\", \"flaky test\", \"test failing\", \"debug test\", \"test broken\", \"test passes sometimes\", or \"intermittent failure\".","oabdelmaksoud\u002FSuperClaw","oabdelmaksoud","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F50699149?v=4","01M6D5CVVN778ZCDP1WHS816SP","Omar Abdelmaksoud","01M6D5CW1RHNSKCJR85GJACBFT",2,"MIT","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FSuperClaw\u002Fblob\u002Fmain\u002Fupstream-import\u002Fclaude-skills\u002Freferences\u002Fengineering-team\u002Fplaywright-pro\u002Fskills\u002Ffix\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",[5,24,25,26,27,28,29,30,31],"playwright","test","debug","debug test","broken","user","use","tests","2026-11-10 10:12:30",false,"---\nname: fix\ndescription: >-\n  Fix failing or flaky Playwright tests. Use when user says \"fix test\",\n  \"flaky test\", \"test failing\", \"debug test\", \"test broken\", \"test passes\n  sometimes\", or \"intermittent failure\".\n---\n\n# Fix Failing or Flaky Tests\n\nDiagnose and fix a Playwright test that fails or passes intermittently using a systematic taxonomy.\n\n## Input\n\n`$ARGUMENTS` contains:\n- A test file path: `e2e\u002Flogin.spec.ts`\n- A test name: `\"should redirect after login\"`\n- A description: `\"the checkout test fails in CI but passes locally\"`\n\n## Steps\n\n### 1. Reproduce the Failure\n\nRun the test to capture the error:\n\n```bash\nnpx playwright test \u003Cfile> --reporter=list\n```\n\nIf the test passes, it's likely flaky. Run burn-in:\n\n```bash\nnpx playwright test \u003Cfile> --repeat-each=10 --reporter=list\n```\n\nIf it still passes, try with parallel workers:\n\n```bash\nnpx playwright test --fully-parallel --workers=4 --repeat-each=5\n```\n\n### 2. Capture Trace\n\nRun with full tracing:\n\n```bash\nnpx playwright test \u003Cfile> --trace=on --retries=0\n```\n\nRead the trace output. Use `\u002Fdebug` to analyze trace files if available.\n\n### 3. Categorize the Failure\n\nLoad `flaky-taxonomy.md` from this skill directory.\n\nEvery failing test falls into one of four categories:\n\n| Category | Symptom | Diagnosis |\n|---|---|---|\n| **Timing\u002FAsync** | Fails intermittently everywhere | `--repeat-each=20` reproduces locally |\n| **Test Isolation** | Fails in suite, passes alone | `--workers=1 --grep \"test name\"` passes |\n| **Environment** | Fails in CI, passes locally | Compare CI vs local screenshots\u002Ftraces |\n| **Infrastructure** | Random, no pattern | Error references browser internals |\n\n### 4. Apply Targeted Fix\n\n**Timing\u002FAsync:**\n- Replace `waitForTimeout()` with web-first assertions\n- Add `await` to missing Playwright calls\n- Wait for specific network responses before asserting\n- Use `toBeVisible()` before interacting with elements\n\n**Test Isolation:**\n- Remove shared mutable state between tests\n- Create test data per-test via API or fixtures\n- Use unique identifiers (timestamps, random strings) for test data\n- Check for database state leaks\n\n**Environment:**\n- Match viewport sizes between local and CI\n- Account for font rendering differences in screenshots\n- Use `docker` locally to match CI environment\n- Check for timezone-dependent assertions\n\n**Infrastructure:**\n- Increase timeout for slow CI runners\n- Add retries in CI config (`retries: 2`)\n- Check for browser OOM (reduce parallel workers)\n- Ensure browser dependencies are installed\n\n### 5. Verify the Fix\n\nRun the test 10 times to confirm stability:\n\n```bash\nnpx playwright test \u003Cfile> --repeat-each=10 --reporter=list\n```\n\nAll 10 must pass. If any fail, go back to step 3.\n\n### 6. Prevent Recurrence\n\nSuggest:\n- Add to CI with `retries: 2` if not already\n- Enable `trace: 'on-first-retry'` in config\n- Add the fix pattern to project's test conventions doc\n\n## Output\n\n- Root cause category and specific issue\n- The fix applied (with diff)\n- Verification result (10\u002F10 passes)\n- Prevention recommendation\n","# Fix Failing or Flaky Tests\n\nDiagnose and fix a Playwright test that fails or passes intermittently using a systematic taxonomy.\n\n## Input\n\n`$ARGUMENTS` contains:\n- A test file path: `e2e\u002Flogin.spec.ts`\n- A test name: `\"should redirect after login\"`\n- A description: `\"the checkout test fails in CI but passes locally\"`\n\n## Steps\n\n### 1. Reproduce the Failure\n\nRun the test to capture the error:\n\n```bash\nnpx playwright test \u003Cfile> --reporter=list\n```\n\nIf the test passes, it's likely flaky. Run burn-in:\n\n```bash\nnpx playwright test \u003Cfile> --repeat-each=10 --reporter=list\n```\n\nIf it still passes, try with parallel workers:\n\n```bash\nnpx playwright test --fully-parallel --workers=4 --repeat-each=5\n```\n\n### 2. Capture Trace\n\nRun with full tracing:\n\n```bash\nnpx playwright test \u003Cfile> --trace=on --retries=0\n```\n\nRead the trace output. Use `\u002Fdebug` to analyze trace files if available.\n\n### 3. Categorize the Failure\n\nLoad `flaky-taxonomy.md` from this skill directory.\n\nEvery failing test falls into one of four categories:\n\n| Category | Symptom | Diagnosis |\n|---|---|---|\n| **Timing\u002FAsync** | Fails intermittently everywhere | `--repeat-each=20` reproduces locally |\n| **Test Isolation** | Fails in suite, passes alone | `--workers=1 --grep \"test name\"` passes |\n| **Environment** | Fails in CI, passes locally | Compare CI vs local screenshots\u002Ftraces |\n| **Infrastructure** | Random, no pattern | Error references browser internals |\n\n### 4. Apply Targeted Fix\n\n**Timing\u002FAsync:**\n- Replace `waitForTimeout()` with web-first assertions\n- Add `await` to missing Playwright calls\n- Wait for specific network responses before asserting\n- Use `toBeVisible()` before interacting with elements\n\n**Test Isolation:**\n- Remove shared mutable state between tests\n- Create test data per-test via API or fixtures\n- Use unique identifiers (timestamps, random strings) for test data\n- Check for database state leaks\n\n**Environment:**\n- Match viewport sizes between local and CI\n- Account for font rendering differences in screenshots\n- Use `docker` locally to match CI environment\n- Check for timezone-dependent assertions\n\n**Infrastructure:**\n- Increase timeout for slow CI runners\n- Add retries in CI config (`retries: 2`)\n- Check for browser OOM (reduce parallel workers)\n- Ensure browser dependencies are installed\n\n### 5. Verify the Fix\n\nRun the test 10 times to confirm stability:\n\n```bash\nnpx playwright test \u003Cfile> --repeat-each=10 --reporter=list\n```\n\nAll 10 must pass. If any fail, go back to step 3.\n\n### 6. Prevent Recurrence\n\nSuggest:\n- Add to CI with `retries: 2` if not already\n- Enable `trace: 'on-first-retry'` in config\n- Add the fix pattern to project's test conventions doc\n\n## Output\n\n- Root cause category and specific issue\n- The fix applied (with diff)\n- Verification result (10\u002F10 passes)\n- Prevention recommendation\n",{"name":5,"description":7},"main","7b610356e36623652299fa2acb477ff821b1d920","upstream-import\u002Fclaude-skills\u002Freferences\u002Fengineering-team\u002Fplaywright-pro\u002Fskills\u002Ffix",0,"https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FSuperClaw","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud","https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fo-abdelmaksoud\u002F","Full-Stack Engineer | AI Systems Architect | Building autonomous multi-agent systems","2026-03-08 21:12:53",{"source":8,"skillName":5,"commands":47,"prompt":57,"zipAvailable":58},[48,51,54],{"tool":49,"command":50},"npx","npx skills add oabdelmaksoud\u002FSuperClaw --skill fix",{"tool":52,"command":53},"bunx","bunx skills add oabdelmaksoud\u002FSuperClaw --skill fix",{"tool":55,"command":56},"pnpm","pnpm dlx skills add oabdelmaksoud\u002FSuperClaw --skill fix","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FSuperClaw\u002Fblob\u002Fmain\u002Fupstream-import\u002Fclaude-skills\u002Freferences\u002Fengineering-team\u002Fplaywright-pro\u002Fskills\u002Ffix\u002FSKILL.md",true,[60],{"path":61,"resourceType":62,"resourceTypeDesc":63,"sizeBytes":64,"sourceHtmlUrl":65},"flaky-taxonomy.md","REFERENCE","参考文档",3496,"https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FSuperClaw\u002Fblob\u002Fmain\u002Fupstream-import\u002Fclaude-skills\u002Freferences\u002Fengineering-team\u002Fplaywright-pro\u002Fskills\u002Ffix\u002Fflaky-taxonomy.md",[67,86,100,126,152,171],{"skillNo":68,"name":69,"nameZh":6,"description":70,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":71,"categories":72,"keywords":76,"publishedAt":32},"01M6D88QCPTBZVCRED0NZ1Y8K8","visa-doc-translate","Translate visa application documents (images) to English and create a bilingual PDF with original and translation","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FSuperClaw\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fecc\u002Fskills\u002Fvisa-doc-translate\u002FSKILL.md",[73],{"categoryNo":74,"categoryName":75,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000002","文档处理",[77,78,79,80,81,82,83,84,85],"translate","doc","visa doc translate","translation","application","create","images","PDF","documents",{"skillNo":87,"name":88,"nameZh":6,"description":89,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":90,"categories":91,"keywords":92,"publishedAt":32},"01M6D88NBM95T3TFM50CYYAP65","verification-loop","A comprehensive verification system for Claude Code sessions.","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FSuperClaw\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fecc\u002Fskills\u002Fverification-loop\u002FSKILL.md",[],[93,94,95,96,97,98,99],"verification","loop","verification loop","sessions","code","claude code sessions","system",{"skillNo":101,"name":102,"nameZh":6,"description":103,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":104,"categories":105,"keywords":115,"publishedAt":32},"01M6D88JFZ2P996GVRHJNSZSTM","tdd-workflow","Use this skill when writing new features, fixing bugs, or refactoring code. Enforces test-driven development with 80%+ coverage including unit, integration, and E2E tests.","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FSuperClaw\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fecc\u002Fskills\u002Ftdd-workflow\u002FSKILL.md",[106,107,110],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":108,"categoryName":109,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":111,"categoryName":112,"taxonomyType":113,"taxonomyTypeDesc":114},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[116,117,118,119,120,121,97,122,30,25,123,124,31,125],"tdd","workflow","tdd workflow","e2e tests","e2e","integration","development","refactoring","coverage","writing",{"skillNo":127,"name":128,"nameZh":6,"description":129,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":130,"categories":131,"keywords":132,"publishedAt":32},"01M6D88FTHRRSVJMXF2G7MQAK3","swiftui-patterns","SwiftUI architecture patterns, state management with @Observable, view composition, navigation, performance optimization, and modern iOS\u002FmacOS UI best practices.","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FSuperClaw\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fecc\u002Fskills\u002Fswiftui-patterns\u002FSKILL.md",[],[133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151],"patterns","swiftui","swiftui patterns","architecture","macos","performance","state management","best practices","state","ui","Optimization","ios","architecture patterns","Composition","performance optimization","view","management","swiftui architecture","navigation",{"skillNo":153,"name":154,"nameZh":6,"description":155,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":156,"categories":157,"keywords":159,"publishedAt":32},"01M6D88D527QTQT9DKHTRFN6EA","swift-protocol-di-testing","Protocol-based dependency injection for testable Swift code — mock file system, network, and external APIs using focused protocols and Swift Testing.","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FSuperClaw\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fecc\u002Fskills\u002Fswift-protocol-di-testing\u002FSKILL.md",[158],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[160,161,162,163,97,164,165,166,167,99,168,169,170],"swift protocol di testing","protocol","swift","testing","protocols","file","network","injection","dependency","swift testing","dependency injection",{"skillNo":172,"name":173,"nameZh":6,"description":174,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":175,"categories":176,"keywords":177,"publishedAt":32},"01M6D88AJW8H2QNWSW5ZY82R43","swift-concurrency-6-2","Swift 6.2 Approachable Concurrency — single-threaded by default, @concurrent for explicit background offloading, isolated conformances for main actor types.","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FSuperClaw\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fecc\u002Fskills\u002Fswift-concurrency-6-2\u002FSKILL.md",[],[178,179,162,180,181,37],"concurrency","swift concurrency","swift concurrency 6 2","default"]