{"_id":"@agents-forge/qa-reviewer","_rev":"2-268ad3a33871884654d4631afbd37b25","name":"@agents-forge/qa-reviewer","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.0":{"name":"@agents-forge/qa-reviewer","version":"1.0.0","keywords":["ai","agent","qa","code-review","playwright","quality-engineering","claude","anthropic","agents-forge"],"author":{"name":"Rohan Patil"},"license":"MIT","_id":"@agents-forge/qa-reviewer@1.0.0","maintainers":[{"name":"rohan12patil","email":"rohan12patil@gmail.com"}],"bin":{"qa-reviewer":"dist/cli.js"},"dist":{"shasum":"8345890dea34f49f97f9ac77eb963738ef87a9b8","tarball":"https://registry.npmjs.org/@agents-forge/qa-reviewer/-/qa-reviewer-1.0.0.tgz","fileCount":15,"integrity":"sha512-NVI+P+OZ56aE5k/y3a3UAkfXPaiHi3kjLIKKoEnWP9I7s5PPeUuSniCwsilKFGbVRHIdCHU6jue7qATHK04p0A==","signatures":[{"sig":"MEUCIEgG1KVD112rpKqf93kJ67MJJMp9KYJtqz1lEhShSBfFAiEAzQpEzEpkQOpD10vxk0VfJDtt9BbzVjRZ7HKLUvWAxNY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33171},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"npx tsx src/cli.ts","build":"tsc","start":"node dist/cli.js","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"rohan12patil","email":"rohan12patil@gmail.com"},"_npmVersion":"11.13.0","description":"AI QA Reviewer agent — reviews test cases and Playwright spec files as a Principal QA Engineer, writes a review_report.md","directories":{},"_nodeVersion":"22.19.0","dependencies":{"@anthropic-ai/claude-agent-sdk":"latest"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","dotenv":"^16.0.0","typescript":"^5.4.0","@types/node":"^20.0.0"},"peerDependencies":{"dotenv":">=16"},"peerDependenciesMeta":{"dotenv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/qa-reviewer_1.0.0_1782072137619_0.14278981126736356","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@agents-forge/qa-reviewer","version":"1.0.1","description":"AI QA Reviewer agent — reviews test cases and Playwright spec files as a Principal QA Engineer, writes a review_report.md","keywords":["ai","agent","qa","code-review","playwright","quality-engineering","claude","anthropic","agents-forge"],"author":{"name":"Rohan Patil"},"license":"MIT","type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":"./dist/index.js","types":"./dist/index.d.ts"}},"bin":{"qa-reviewer":"dist/cli.js"},"scripts":{"build":"tsc","dev":"npx tsx src/cli.ts","start":"node dist/cli.js","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"engines":{"node":">=18.0.0"},"dependencies":{"@anthropic-ai/claude-agent-sdk":"latest"},"devDependencies":{"@types/node":"^20.0.0","dotenv":"^16.0.0","tsx":"^4.0.0","typescript":"^5.4.0"},"peerDependencies":{"dotenv":">=16"},"peerDependenciesMeta":{"dotenv":{"optional":true}},"gitHead":"10c638b195aeabece774b897d9f7a640d41eadc5","_id":"@agents-forge/qa-reviewer@1.0.1","_nodeVersion":"22.19.0","_npmVersion":"11.13.0","dist":{"integrity":"sha512-uujakAV58VVMXAxYIjl6/7NSHCILqx66rifnIPS8tkKKTJw/Ph18JVLQZXo3rRRcgb44SdpkTP9wVaKyK0azqw==","shasum":"888864f6061b216561974b3401e3a657376face7","tarball":"https://registry.npmjs.org/@agents-forge/qa-reviewer/-/qa-reviewer-1.0.1.tgz","fileCount":15,"unpackedSize":33169,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIH4scG334k5K+mVTwPdMxk6OHwTFHdzZzRiDW9rjCMEzAiBd7NHH0wqWVRchnwvgcN4LxsIenigzsmcsRndTchAIOw=="}]},"_npmUser":{"name":"rohan12patil","email":"rohan12patil@gmail.com"},"directories":{},"maintainers":[{"name":"rohan12patil","email":"rohan12patil@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/qa-reviewer_1.0.1_1782072320214_0.5703107260434641"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-21T20:02:17.449Z","modified":"2026-06-21T20:05:20.491Z","1.0.0":"2026-06-21T20:02:17.753Z","1.0.1":"2026-06-21T20:05:20.366Z"},"author":{"name":"Rohan Patil"},"license":"MIT","keywords":["ai","agent","qa","code-review","playwright","quality-engineering","claude","anthropic","agents-forge"],"description":"AI QA Reviewer agent — reviews test cases and Playwright spec files as a Principal QA Engineer, writes a review_report.md","maintainers":[{"name":"rohan12patil","email":"rohan12patil@gmail.com"}],"readme":"# 🔍 QA Reviewer Agent\n\n[![npm version](https://img.shields.io/npm/v/@agents-forge/qa-reviewer.svg)](https://www.npmjs.com/package/@agents-forge/qa-reviewer)\n\nReviews your test cases and Playwright scripts as a Principal QA Engineer — checking coverage, selector quality, assertion depth, traceability, and more. Writes a `review_report.md` you can action before running tests.\n\nPart of the **[@agents-forge](https://www.npmjs.com/org/agents-forge) AIQA pipeline**:\n```\nanalyst → qa-planner → qa-engineer → qa-reviewer → qa-reporter\n```\n\n---\n\n## Install\n\n```bash\nnpm install @agents-forge/qa-reviewer\n```\n\n---\n\n## Quick Start\n\n```bash\n# Run in your project root — auto-discovers everything\nnpx @agents-forge/qa-reviewer\n```\n\n---\n\n## Authentication\n\nAuto-detected — no config needed:\n\n| Method | Setup |\n|---|---|\n| Anthropic API key | `ANTHROPIC_API_KEY=sk-ant-...` in `.env` |\n| Claude subscription | `npm install -g @anthropic-ai/claude-code` → `claude login` |\n| GitHub Copilot | `gh auth login` |\n\n---\n\n## What it reviews\n\nAuto-discovers and reviews all these files:\n\n| File | What's checked |\n|---|---|\n| `test_plan.md` | Coverage completeness vs feature areas |\n| `test-cases/*.md` | Test IDs, steps clarity, expected results, tagging |\n| `tests/*.spec.ts` | Selectors, assertions, independence, tags, env vars |\n| `playwright.config.ts` | Reporters, browser matrix, retry config |\n\n---\n\n## Features\n\n- 🔴 **Critical issues** — must fix before release\n- 🟡 **Warnings** — should fix for quality\n- 🟢 **Suggestions** — nice to have improvements\n- 📊 **Traceability matrix** — every TC ID mapped to its spec test\n- 📋 **Module-by-module** coverage summary\n- ✅ **Sign-off checklist** — clear gates before qa-reporter\n\n---\n\n## CLI Usage\n\n```bash\n# Review current directory\nnpx @agents-forge/qa-reviewer\n\n# Custom output filename\nnpx @agents-forge/qa-reviewer --output my_review.md\n\n# Review a specific directory\nnpx @agents-forge/qa-reviewer --dir ./my-project\n```\n\n---\n\n## Programmatic Usage\n\n```typescript\nimport { runQAReviewer } from \"@agents-forge/qa-reviewer\";\n\nawait runQAReviewer({\n  cwd: process.cwd(),          // optional — defaults to process.cwd()\n  outputFile: \"review_report.md\", // optional — default filename\n});\n```\n\n---\n\n## Output: `review_report.md`\n\n```markdown\n# QA Review Report\nStatus: PASSED / PASSED WITH WARNINGS / NEEDS REVISION\n\n## Coverage Summary\n| Module | Test Cases | Spec Tests | Traceability | Status |\n\n## Issues Found\n### 🔴 Critical Issues\n### 🟡 Warnings\n### 🟢 Suggestions\n\n## Test Case Review (per module)\n## Spec File Review (per module)\n## Traceability Matrix\n## Recommendations\n## Sign-off checklist\n```\n\n---\n\n## Full Pipeline\n\n```bash\nnpx @agents-forge/analyst https://my-app.com requirements.md\nnpx @agents-forge/qa-planner requirements.md test_plan.md\nnpx @agents-forge/qa-engineer test_plan.md --url https://my-app.com\nnpx @agents-forge/qa-reviewer\nnpx @agents-forge/qa-reporter    # coming soon\n```\n\n---\n\n## Troubleshooting\n\n| Error | Fix |\n|---|---|\n| `No test files found` | Run `@agents-forge/qa-engineer` first |\n| `Authentication failed` | Set `ANTHROPIC_API_KEY` or run `claude login` |\n| `test_plan.md not found` | Run `@agents-forge/qa-planner` first |\n\n---\n\n## License\n\nMIT\n","readmeFilename":"README.md"}