brainy/vitest.integration.config.ts
David Snelling 4949b6a629 CHECKPOINT: Industry-standard 3-tier testing implemented
 MAJOR BREAKTHROUGH - Session 5 Success:
- Unit tests: 18/19 passing with mocked AI (<500MB RAM)
- Integration tests: Real AI models loading successfully
- Core features: Real embeddings, CRUD operations verified
- Architecture: All 11 augmentations, worker threads operational

📋 CRITICAL FINDINGS:
- Real AI models load and cache correctly
- 384D embeddings generate properly
- Core CRUD operations work with real transformers
- Memory management effective for production

⚠️ RELEASE BLOCKER IDENTIFIED:
- Search operations timeout in test environment
- Affects: search(), find(), clustering functionality
- Root cause: Likely worker communication during HNSW search
- Priority: MUST fix before 2.0.0 release

🎯 NEXT SESSION PRIORITIES:
1. Debug and fix search timeout issue
2. Verify search/find/clustering work in production
3. Final documentation cleanup
4. Release preparation

Confidence: 90% ready (pending search functionality verification)
2025-08-25 17:12:58 -07:00

55 lines
No EOL
1.4 KiB
TypeScript

import { defineConfig } from 'vitest/config'
/**
* Integration Test Configuration - REAL AI MODELS
*
* Based on industry practices: fewer tests, real models, high memory
* Only run critical AI functionality to verify production readiness
*/
export default defineConfig({
test: {
globals: true,
setupFiles: ['./tests/setup-integration.ts'],
environment: 'node',
// INTEGRATION TESTS: Real AI, need time and memory
testTimeout: 300000, // 5 minutes per test
hookTimeout: 120000, // 2 minutes for setup
teardownTimeout: 30000,
// Include only integration tests
include: [
'tests/integration/**/*.test.ts',
'tests/**/*.integration.test.ts'
],
// CRITICAL: Sequential execution to prevent memory exhaustion
pool: 'forks',
poolOptions: {
forks: {
maxForks: 1, // One test at a time
minForks: 1,
singleFork: true, // Absolute isolation
isolate: true
}
},
// No parallelism
maxConcurrency: 1,
fileParallelism: false,
// Minimal reporting to reduce memory
reporters: process.env.CI ? ['dot'] : ['basic'],
// No coverage (saves memory)
coverage: {
enabled: false
},
// Test sharding for CI
shard: process.env.VITEST_SHARD,
// Retry once for flaky AI tests
retry: 1
}
})