fix

alirezarezvani/claude-skills · updated Apr 8, 2026

$npx skills add https://github.com/alirezarezvani/claude-skills --skill fix
0 commentsdiscussion
summary

Diagnose and fix a Playwright test that fails or passes intermittently using a systematic taxonomy.

skill.md

Fix Failing or Flaky Tests

Diagnose and fix a Playwright test that fails or passes intermittently using a systematic taxonomy.

Input

$ARGUMENTS contains:

  • A test file path: e2e/login.spec.ts
  • A test name: ""should redirect after login"`
  • A description: "the checkout test fails in CI but passes locally"

Steps

1. Reproduce the Failure

Run the test to capture the error:

npx playwright test <file> --reporter=list

If the test passes, it's likely flaky. Run burn-in:

npx playwright test <file> --repeat-each=10 --reporter=list

If it still passes, try with parallel workers:

npx playwright test --fully-parallel --workers=4 --repeat-each=5

2. Capture Trace

Run with full tracing:

npx playwright test <file> --trace=on --retries=0

Read the trace output. Use /debug to analyze trace files if available.

3. Categorize the Failure

Load flaky-taxonomy.md from this skill directory.

Every failing test falls into one of four categories:

Category Symptom Diagnosis
Timing/Async Fails intermittently everywhere --repeat-each=20 reproduces locally
Test Isolation Fails in suite, passes alone --workers=1 --grep "test name" passes
Environment Fails in CI, passes locally Compare CI vs local screenshots/traces
Infrastructure Random, no pattern Error references browser internals

4. Apply Targeted Fix

Timing/Async:

  • Replace waitForTimeout() with web-first assertions
  • Add await to missing Playwright calls
  • Wait for specific network responses before asserting
  • Use toBeVisible() before interacting with elements

Test Isolation:

  • Remove shared mutable state between tests
  • Create test data per-test via API or fixtures
  • Use unique identifiers (timestamps, random strings) for test data
  • Check for database state leaks

Environment:

  • Match viewport sizes between local and CI
  • Account for font rendering differences in screenshots
  • Use docker locally to match CI environment
  • Check for timezone-dependent assertions

Infrastructure:

  • Increase timeout for slow CI runners
  • Add retries in CI config (retries: 2)
  • Check for browser OOM (reduce parallel workers)
  • Ensure browser dependencies are installed

5. Verify the Fix

Run the test 10 times to confirm stability:

npx playwright test <file> --repeat-each=10 --reporter=list

All 10 must pass. If any fail, go back to step 3.

6. Prevent Recurrence

Suggest:

  • Add to CI with retries: 2 if not already
  • Enable trace: 'on-first-retry' in config
  • Add the fix pattern to project's test conventions doc

Output

  • Root cause category and specific issue
  • The fix applied (with diff)
  • Verification result (10/10 passes)
  • Prevention recommendation

Discussion

Product Hunt–style comments (not star reviews)
  • No comments yet — start the thread.
general reviews

Ratings

4.855 reviews
  • Shikha Mishra· Dec 24, 2024

    fix has been reliable in day-to-day use. Documentation quality is above average for community skills.

  • Noor Gupta· Dec 24, 2024

    fix has been reliable in day-to-day use. Documentation quality is above average for community skills.

  • Jin Ramirez· Dec 16, 2024

    fix fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.

  • Dev Kapoor· Dec 12, 2024

    fix is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.

  • Rahul Santra· Nov 15, 2024

    fix reduced setup friction for our internal harness; good balance of opinion and flexibility.

  • Anaya Torres· Nov 15, 2024

    fix reduced setup friction for our internal harness; good balance of opinion and flexibility.

  • Arya Mehta· Nov 7, 2024

    We added fix from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.

  • Noor Kapoor· Nov 3, 2024

    Keeps context tight: fix is the kind of skill you can hand to a new teammate without a long onboarding doc.

  • Arya Jain· Oct 26, 2024

    fix reduced setup friction for our internal harness; good balance of opinion and flexibility.

  • Arya Ramirez· Oct 22, 2024

    I recommend fix for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.

showing 1-10 of 55

1 / 6