* SwarmMemoryManager Refactoring Plan * fix: add missing directories to npm package (v1.9.3) Added templates/, .claude/helpers/, and docs/reference/ to package.json files array. These were missing from the npm distribution, causing `aqe init` to fail with "Template file not found" errors. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * checkpoint improvements * fix: critical memory/learning system fixes for v1.9.4 ## Critical Fixes - Vector embeddings now stored correctly (was storing NULL) - SQL parameter style fixed for agentdb's SqlJsDatabase wrapper - HNSW index schema mismatch resolved with pattern_id column - Hooks now save to correct database (.agentic-qe/agentdb.db) ## New Features - Added 5 SwarmMemoryManager methods for learning data retrieval: - getBestAction() - Q-learning best action selection - getRecentLearningExperiences() - Recent experience retrieval - getLearningExperiencesByTaskType() - Task-filtered experiences - getHighRewardExperiences() - Successful experience extraction - getLearningStats() - Aggregate learning statistics - Added comprehensive integration test for memory/learning loop - Added RuVector pattern store integration (experimental) ## Technical Details - Vector embeddings: 384 dimensions × 4 bytes = 1,536 bytes per pattern - All 12 integration tests pass - HNSW index: 150x faster vector search enabled 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * fix: move ARM64-only ruvector packages to optionalDependencies Fixes CI failures caused by platform-specific dependencies: - @ruvector/node-linux-arm64-gnu (ARM64 only) - ruvector-core-linux-arm64-gnu (ARM64 only) These packages caused npm ci to fail on x64 CI runners with: "EBADPLATFORM - wanted linux/arm64, current linux/x64" Solution: Move ARM64 packages to optionalDependencies and add x64 variants for cross-platform compatibility. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * chore: regenerate package-lock.json with x64 ruvector packages Updates lockfile to include optional x64 platform packages for CI compatibility: - @ruvector/node-linux-x64-gnu@0.1.17 - ruvector-core-linux-x64-gnu@0.1.15 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * fix: replace fake QUIC with proper implementation and clean up skills manifest QUIC Transport: - Remove fake HTTP/2-based QUICTransport.ts that pretended to be QUIC - Add proper QUIC implementation via Rust/WASM (@agentic-flow/quic-wasm) - Add WebSocket fallback transport for when WASM unavailable - Add dedicated type declarations for optional WASM module - Features: 0-RTT connection, stream multiplexing, TLS 1.3 built-in Skills Manifest: - Rewrite skills-manifest.json with only QE skills (41 skills) - Remove Claude Flow platform skills (agentdb-*, flow-nexus-*, github-*, etc.) - Organize into proper categories: qe-core, testing-methodologies, etc. Bug Fixes: - Fix UnifiedMemoryCoordinator.ts TypeScript errors - Use Logger.getInstance() instead of private constructor - Use swarmMemory.query() instead of non-existent list() method - Use correct close() method signatures for backends 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * feat: add QX Partner agent, compact subagents, fix CLAUDE.md dynamic counts - Add QX Partner agent for Quality Experience analysis combining QA + UX perspectives - Compact 9 subagent definitions to ~80 lines each (88% reduction) - Fix CLAUDE.md template to dynamically count agents (including subagents) and skills - Move CLAUDE.md creation after parallel phases for accurate counts - Remove 'Production-Ready' claim from README and CHANGELOG - Clean up backup files and move docs to proper directory Initialization now correctly reports: - 31 QE Agents (20 main + 11 subagents) - 53 QE Skills - 8 Slash Commands 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * fix: resolve CI failures and security alert #36 - Replace MD5 with SHA-256 for ETag calculation (security alert #36) - Fix CRLF line endings in shell scripts causing parse errors - Remove 'local' keyword from for-loop in test-integration-batched.sh - Use dynamic process.cwd() instead of hardcoded path in jest.config.js - Enhance quality-gate.ts to parse test logs when results file missing 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * feat: Complete Agentic QE Fleet v2.1 implementation (closes #101) ## Implemented Features ### Error Recovery Enhancement (Task 1.3) - CircuitBreaker class with state management (CLOSED/OPEN/HALF_OPEN) - RetryStrategy with exponential/linear/constant backoff - RecoveryOrchestrator with 6 recovery strategies - Transport fallback mechanisms ### Dynamic Skill Loader (Task 2.2) - Metadata-only initial loading (98% token reduction) - On-demand full skill retrieval - LRU caching with configurable TTL (30min default) - Preload suggestions for critical workflows ### Swarm Learning Optimizer (Task 4.1) - Topology recommendation engine (hierarchical/mesh/ring/star) - Agent allocation with capability matching and load balancing - Bottleneck detection (agent/memory/coordination/IO) - Real-time performance adjustments - Added getLatestRecommendation() method ### Workflow Orchestrator (Task 4.2) - AdaptiveScheduler with dynamic strategy selection - Priority-based task queue with age boosting - Task dependency resolution - Work stealing and backpressure handling - Added getQueueDepth() and getStatus() methods ### Unified Memory Coordinator (Task 4.3) - Consolidated memory managers (SQLite, AgentDB, Vector, JSON) - Automatic failover chain with health monitoring - Batch operations and namespace isolation - Periodic sync between backends ### SwarmCoordinator Improvements - Real CPU utilization tracking via process.cpuUsage() - Queue depth from WorkflowOrchestrator - Optimizer recommendations in feedback data - Calculated average complexity from metrics ## Additional Changes - Migration documentation and test restructuring plan - GitHub issue templates and workflows - Test suite improvements and cleanup 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * feat: optimize 38 QE skills with agent-focused format (#102) - Add enhanced YAML frontmatter (tokenEstimate, agents, tags, etc.) - Add <default_to_action> blocks for immediate actionable guidance - Add Quick Reference Cards with tables for at-a-glance info - Add Agent Integration examples using Task() pattern - Add Agent Coordination Hints (memory namespace + fleet coordination) - Condense content optimized for agent consumption - Reduce total token footprint by ~65% across skills Skills updated: - Core QE: agentic-quality-engineering, holistic-testing-pact - Testing Types: api-testing, chaos-engineering, compatibility, compliance, contract, database, exploratory, localization, mobile, mutation, performance, regression, security, visual-testing - Methodologies: tdd-london-chicago, xp-practices, context-driven, risk-based, shift-left, shift-right - Analysis: code-review-quality, quality-metrics, test-design-techniques - Strategy: test-automation-strategy, test-data-management, test-environment-management, test-reporting-analytics - CI/CD: cicd-pipeline-qe-orchestrator, accessibility-testing - Communication: brutal-honesty-review, bug-reporting-excellence, consultancy-practices, sherlock-review, six-thinking-hats, technical-writing - Refactoring: refactoring-patterns Also includes: package.json updates, docs/optimization/, docs/templates/, scripts/validate-skill-optimization.ts Skipped: testability-scoring (pending PR from @fndlalit) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * release: v2.1.0 - Comprehensive QX Analysis & Skills Optimization ## Summary - Comprehensive QX Analysis with 23+ heuristics (PR #104 by @fndlalit) - 38 QE Skills optimized with agent-focused format (PR #102) - Testability Scoring skill v2.1 with optimized format - QX Partner Agent v2.1 with enhanced capabilities - Fix MCP SDK compatibility for @modelcontextprotocol/sdk bump (PR #105) ## Changes - .claude/agents/qx-partner.md: Updated to v2.1 with domain-specific detection - .claude/skills/testability-scoring/SKILL.md: Optimized format (59% token reduction) - src/mcp/server.ts: Removed deprecated 'description' field for MCP SDK compatibility - package.json: Bumped version to 2.1.0 - README.md: Updated version and release notes - CHANGELOG.md: Added v2.1.0 release notes 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> --------- Co-authored-by: Claude <noreply@anthropic.com>
6.9 KiB
Test Suite Migration: Executive Summary
Created: 2025-12-02 Status: Planning Phase Migration Lead: TBD
🎯 Overview
The Agentic QE Fleet test suite has grown to 402 test files with 195,527 lines of code. This migration restructures the suite to focus on user value rather than implementation details, reducing complexity while maintaining quality.
📊 Current Problems
Size & Complexity
- 402 test files (target: 50 files)
- 195,527 lines (target: 40,000 lines)
- 18 files > 1,000 lines (target: 0 files > 600 lines)
- Average file size: 486 lines
Test Focus Misalignment
- 45% focus on implementation details ❌ (should be 10-15%)
- 35% focus on user value (should be 70-80%)
- 20% focus on contracts ✅ (acceptable)
Maintenance Burden
- ~8,000 lines of duplicate test code (4% redundancy)
- 7 skipped test blocks (blocking CI/CD confidence)
- ~5 minute test execution time (target: < 2 minutes)
🎯 Goals & Success Criteria
Primary Goals
- Reduce test suite size by 79.5% (195,527 → 40,000 lines)
- Focus 70% of tests on user value (7 core journeys)
- Eliminate all skipped tests (improve CI/CD confidence)
- Speed up test execution by 60% (5 min → 2 min)
- Maintain or improve coverage (≥85% for critical paths)
Success Metrics
- ✅ 7 Core User Journeys pass with 100% reliability
- ✅ Test execution time < 2 minutes
- ✅ 70% of tests focus on user-facing behavior
- ✅ Zero skipped tests in CI/CD pipeline
- ✅ No test file > 600 lines
- ✅ Test coverage maintained ≥85%
🏗️ Migration Strategy
New Test Structure (Testing Trophy)
tests/
├── journeys/ 70% of effort - User-centric integration tests
│ ├── init-and-bootstrap.test.ts
│ ├── generate-tests.test.ts
│ ├── execute-tests.test.ts
│ ├── coverage-analysis.test.ts
│ ├── quality-gate.test.ts
│ ├── flaky-detection.test.ts
│ └── learning-improvement.test.ts
│
├── contracts/ 20% of effort - API boundary tests
│ ├── mcp-tools.test.ts
│ ├── cli-commands.test.ts
│ └── agent-interfaces.test.ts
│
├── infrastructure/ 10% of effort - Core system tests
│ ├── database.test.ts
│ ├── memory-coordination.test.ts
│ └── event-bus.test.ts
│
└── regression/ Critical bug prevention
└── fixed-bugs/
7 Core User Journeys (Must Work)
- Init & Bootstrap -
aqe initcreates config, database, agents - Test Generation - Produces valid, runnable tests with AI
- Test Execution - Parallel execution with real-time progress
- Coverage Analysis - O(log n) gap detection with risk scoring
- Quality Gates - Automated GO/NO-GO deployment decisions
- Flaky Detection - Statistical detection with auto-fixes
- Learning System - Q-learning improves test quality over time
📋 Migration Phases
Phase 1: Setup & Analysis (4-6 hours)
- Create new directory structure
- Analyze duplicate test coverage
- Document baseline metrics
- Setup migration CI pipeline
Deliverable: Migration infrastructure ready
Phase 2: Create Journey Tests (8-12 hours)
- Implement 7 core user journey tests
- Use real database (no mocks)
- Validate end-to-end workflows
Deliverable: 7 journey tests passing with 100% reliability
Phase 3: Consolidate Unit Tests (12-16 hours)
- Merge duplicate BaseAgent tests (6 files → 2 files)
- Merge duplicate TestGeneratorAgent tests (3 files → 1 file)
- Merge duplicate LearningEngine tests (2 files → 1 file)
- Create contract tests for 102 MCP tools
Deliverable: All unit tests consolidated, no file > 600 lines
Phase 4: Delete Redundant Tests (4-6 hours)
- Delete implementation detail tests (~51K lines)
- Remove duplicate test files
- Clean up old directory structure
Deliverable: ~60K lines of test code deleted
Phase 5: CI/CD Integration (4-6 hours)
- Optimize test execution scripts
- Update GitHub Actions workflows
- Add coverage gates
- Generate test dashboard
Deliverable: CI/CD runs in < 2 minutes with automated quality gates
💰 Expected ROI
Time Savings
- Test execution time: 3 minutes saved per run
- Local development: ~30 runs/week = 90 min/week saved
- CI/CD pipeline: ~100 runs/week = 300 min/week saved
- Total: ~6.5 hours/week saved
Maintenance Savings
- Reduced complexity: 79.5% fewer lines to maintain
- Faster onboarding: New contributors understand tests in < 1 hour
- Lower flake rate: Statistical detection prevents CI/CD failures
Quality Improvements
- Higher confidence: 100% reliable journey tests
- Better coverage: Focus on user value, not implementation
- Faster feedback: 2-minute test runs enable rapid iteration
⚠️ Key Risks
| Risk | Impact | Mitigation |
|---|---|---|
| Coverage drops | High | Run coverage report after each phase. Rollback if drops > 2%. |
| Journey tests flaky | High | Use real database with test isolation. Run 10x locally first. |
| Takes longer | Medium | Break into small PRs (one phase at a time). Track progress daily. |
| Bugs exposed | Medium | Expected! Create regression tests. Don't block migration. |
📅 Timeline
| Phase | Duration | Target Completion |
|---|---|---|
| Phase 1: Setup | 1 week | TBD |
| Phase 2: Journey Tests | 1.5 weeks | TBD |
| Phase 3: Consolidation | 2 weeks | TBD |
| Phase 4: Deletion | 1 week | TBD |
| Phase 5: CI/CD | 1 week | TBD |
| Total | 6-7 weeks | TBD |
📚 Resources
- Full Migration Plan - Detailed 29-task plan with verification steps
- Progress Tracking - Real-time metrics and daily updates
- GitHub Issue Template - Issue tracking template
- Duplicate Analysis Script - Automated duplicate detection
🚀 Next Steps
- Assign migration lead
- Schedule kick-off meeting (30 min)
- Create GitHub tracking issue
- Run
npx tsx scripts/analyze-test-duplicates.ts - Review baseline metrics with team
- Start Phase 1: Setup & Analysis
📞 Questions?
For questions about the migration plan, contact:
- Migration Lead: TBD
- Technical Owner: TBD
- Documentation: See
/docs/migration/directory
This migration follows best practices from Google Testing Blog, Martin Fowler's Test Pyramid, and Kent C. Dodds' Testing Trophy.
Last Updated: 2025-12-02 by GOAP Specialist