mirror of
https://github.com/proffesor-for-testing/agentic-qe.git
synced 2026-09-19 08:45:47 +08:00
fb45e5e763
## New Features ### 3 New Advanced QE Skills - six-thinking-hats: Edward de Bono's methodology for comprehensive testing analysis - brutal-honesty-review: Unvarnished technical criticism for code/test quality - cicd-pipeline-qe-orchestrator: Complete CI/CD quality orchestration (5 phases, 3 workflows) ### Skills Library Growth - Phase 1: 18 skills (Original Quality Engineering) - Phase 2: 16 skills (Expanded QE Library) - Phase 3: 3 skills (Advanced Quality Engineering) ⭐ NEW - Total: 37 specialized QE skills (up from 34) ## Changes ### Documentation Updates (10 files) - CHANGELOG.md: v1.6.1 release notes with comprehensive details - README.md: Updated version badge, skills count (34→37) - CLAUDE.md: Updated skills count and names in quick reference - package.json: Version 1.6.0→1.6.1, description updated - docs/reference/skills.md: Added Phase 3 section - docs/reference/usage.md: Updated skills count - src/cli/commands/init-claude-md-template.ts: New condensed template generator - CI/CD orchestrator files: Updated all references to 37 skills ### Code Updates - src/cli/commands/init.ts: Added 3 skills to QE_FLEET_SKILLS array - Updated validation to check for 37 skills (was 34) - Updated all documentation comments ### New Files (8 files) - .claude/skills/six-thinking-hats/SKILL.md (1,215 lines) - .claude/skills/brutal-honesty-review/SKILL.md (725 lines) - .claude/skills/cicd-pipeline-qe-orchestrator/SKILL.md (510 lines) - .claude/skills/cicd-pipeline-qe-orchestrator/README.md (290 lines) - resources/workflows/microservice-pipeline.md (372 lines) - resources/workflows/monolith-pipeline.md (389 lines) - resources/workflows/mobile-pipeline.md (497 lines) - src/cli/commands/init-claude-md-template.ts (99 lines) ## Testing - ✅ Build: Compiled successfully with no TypeScript errors - ✅ Init: `aqe init --yes` successfully copies all 37 skills - ✅ Verification: All 3 new skill directories created with valid SKILL.md - ✅ CLAUDE.md: Correctly reports "37 QE Skills" with new skill names - ✅ Lint: No new linting issues introduced - ✅ Unit Tests: 898 passed, no new failures related to v1.6.1 ## Impact - Skills Coverage: 95%+ of modern QE practices with advanced frameworks - CI/CD Integration: Complete pipeline orchestration commit→production - Critical Thinking: Cognitive frameworks for better testing decisions - Quality Standards: Brutal honesty approach for technical excellence 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
74 lines
3.0 KiB
Markdown
74 lines
3.0 KiB
Markdown
# Test Execution Policy
|
|
|
|
**ALWAYS run tests in batches to avoid memory overload in constrained environments (DevPod, Codespaces, etc.).**
|
|
|
|
## Critical Requirements
|
|
|
|
This is a critical policy to prevent workspace crashes:
|
|
- ❌ **NEVER** run all tests in parallel without memory constraints
|
|
- ❌ **NEVER** use `npm test` without understanding memory impact
|
|
- ❌ **NEVER** run `npm run test:integration-unsafe` (direct Jest execution)
|
|
- ✅ **ALWAYS** use batched test scripts: `npm run test:unit`, `npm run test:integration`, `npm run test:agents`, etc.
|
|
- ✅ **ALWAYS** run tests sequentially with `--runInBand` in memory-constrained environments
|
|
- ✅ **ALWAYS** monitor memory usage before running large test suites
|
|
- ✅ **INTEGRATION TESTS**: Always use `npm run test:integration` which runs `scripts/test-integration-batched.sh`
|
|
|
|
## Examples of Correct Behavior
|
|
|
|
- User: "run all tests" → Run batched: `npm run test:unit && npm run test:integration && npm run test:agents`
|
|
- User: "test everything" → Use sequential batched execution with memory limits
|
|
- User: "run integration tests" → Use `npm run test:integration` (runs batched script)
|
|
- ❌ **BAD**: `npm test` (runs all 959 tests in parallel, causes OOM)
|
|
- ❌ **BAD**: `npm run test:integration-unsafe` (loads 46 files, causes OOM)
|
|
- ✅ **GOOD**: `npm run test:unit` then `npm run test:integration` (batched with memory limits)
|
|
|
|
## Available Batched Test Scripts
|
|
|
|
See `package.json` for all available scripts:
|
|
|
|
```bash
|
|
npm run test:unit # Unit tests only (512MB limit)
|
|
npm run test:integration # Integration tests BATCHED (scripts/test-integration-batched.sh)
|
|
npm run test:agents # Agent tests (512MB limit)
|
|
npm run test:cli # CLI tests (512MB limit)
|
|
npm run test:mcp # MCP tests (512MB limit)
|
|
npm run test:performance # Performance tests (1536MB limit)
|
|
npm run test:agentdb # AgentDB tests (1024MB limit)
|
|
```
|
|
|
|
## Why Integration Tests Need Batching
|
|
|
|
- **46 integration test files** (40 main + 6 phase2)
|
|
- Each file creates Database instances, agents, FleetManagers
|
|
- Running all 46 at once exceeds 768MB memory limit
|
|
- `scripts/test-integration-batched.sh` runs in batches of 5 files with cleanup between batches
|
|
- Phase2 tests run individually (heavier memory usage)
|
|
|
|
## Background
|
|
|
|
This policy prevents workspace crashes that occurred in previous sessions due to running all tests simultaneously. The workspace has limited memory (typically 768MB-2GB in DevPod/Codespaces), and running 959 tests in parallel can exceed this limit.
|
|
|
|
## Memory Profiling
|
|
|
|
If you need to check memory usage:
|
|
|
|
```bash
|
|
# Check available memory
|
|
free -h
|
|
|
|
# Monitor memory during test execution
|
|
watch -n 1 free -h
|
|
|
|
# Run tests with memory profiling
|
|
NODE_OPTIONS="--max-old-space-size=512" npm run test:unit
|
|
```
|
|
|
|
---
|
|
|
|
**Related Policies:**
|
|
- [Git Operations Policy](git-operations.md)
|
|
- [Release Verification Policy](release-verification.md)
|
|
|
|
**Related Scripts:**
|
|
- `scripts/test-integration-batched.sh` - Batched integration test runner
|