بنقرة واحدة
testing
// Guidelines for testing the application with Vitest, including unit tests, integration tests (emulator), AI tests, and eval suites for LLM features
// Guidelines for testing the application with Vitest, including unit tests, integration tests (emulator), AI tests, and eval suites for LLM features
| name | testing |
| description | Guidelines for testing the application with Vitest, including unit tests, integration tests (emulator), AI tests, and eval suites for LLM features |
All testing guidance lives in this directory. Read the relevant file for your task:
| Type | File | When to use |
|---|---|---|
| Unit tests | unit.md | Framework setup, mocks, colocated tests |
| Writing tests | write-tests.md | What to test, what to skip, workflow |
| LLM tests | llm.md | Tests that call real LLMs (pnpm test-ai) |
| Eval suite | eval.md | Cross-model comparison, LLM-as-judge |
| Integration | integration.md | Emulator-backed tests (pnpm test-integration) |
| E2E tests | e2e.md | Real email workflow tests from inbox-zero-e2e repo |
Prefer behavior-focused assertions; avoid freezing prompt copy or internal call shapes unless those exact values are the contract under test.
pnpm test path/to/file.test.ts # Single unit test
pnpm test # All unit tests
pnpm test-integration # Integration tests (emulator)
pnpm test-ai ai-regression/your-feature # Live AI regression test
EVAL_MODELS=all pnpm test-ai eval/your-feature # Eval across models
Cursor Cloud VM setup and service startup instructions for local development
Simplify and refine recently modified code for clarity, consistency, and maintainability while preserving exact behavior. Use when asked to simplify, polish, refactor lightly, or clean up current-session changes before review or PR.
Commit changes and open a pull request with safe metadata
Review prompt and tool-description changes in a branch or PR. Use when asked to audit system prompts, prompt builders, tool descriptions, prompt inputs, or nearby evals/tests; summarize what changed; identify guidance that feels eval-shaped or too heavy for product use; and find repeated instructions between the main prompt and tool descriptions.
Add a new changelog entry to docs/changelog-entries/
Update workspace packages while respecting the repo's pinned package list in .ncurc.cjs. Use when the user asks to update dependencies or refresh package versions.