Commit graph

1 commit

Author SHA1 Message Date
7ee393afc7 feat: add performance benchmark tests for Phase 3
Created comprehensive performance test suite measuring:

TestGenerationLatency:
- Full generation pipeline latency (target: <30s with mocked LLM)
- Social copy creation overhead (target: <2s)
- Logs metrics to ir_logging for trend analysis

TestQueryCount:
- N+1 query detection with assertQueryCount()
- Generation pipeline: <50 queries
- Topic queue lookup: 1 query
- Log list view with prefetch: 2 queries

TestTokenUsageBaseline:
- Token usage baseline measurement (800-1200 tokens typical)
- Used for cost estimation and budget alerts

TestConcurrentGeneration:
- Concurrent post generation (2 slots simultaneous)
- Verifies no ID collisions or state corruption
- Both logs and posts created successfully

Tests establish SLO baselines:
- Latency P50: <30s, P99: <60s
- Token efficiency: 800-1200 per post
- Query count: <50 per generation
- Concurrent posts: 5+ without degradation
- Email latency: <5s
- Template DB prime: <60s

All tests use mocked LLM to measure local overhead only.
Production testing with real API calls will add network time.

Tagged with 'performance' for easy filtering: pytest -m performance

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-05-30 00:51:53 -04:00