Story Crater Bot
9c745b2051
feat: M3.8.3 complete — metrics & monitoring (7 tests)
MetricsCollector implementation:
- Per-project aggregation of OptimizationMetrics
- Structured logging via tracing (log_all_projects)
- Prometheus export format (prometheus_export)
- Per-compressor stat tracking
7 new tests (all passing):
- test_collector_merge_single_project
- test_collector_merge_multiple_projects
- test_collector_merge_aggregates
- test_collector_nonexistent_project
- test_collector_per_compressor_stats
- test_prometheus_export_format
- test_prometheus_compression_ratio
Ready to integrate into rebuild.rs:
let collector = MetricsCollector::new();
...
collector.merge_project(project_id, metrics);
collector.log_all_projects();
Total M3.8 progress:
- M3.8.1: ✅ 62 tests (core compressors)
- M3.8.2: ✅ 5 tests (ingest helpers)
- M3.8.3: ✅ 7 tests (metrics & monitoring)
- M3.8.4: ✅ IMPLICIT (no query compression needed)
- M3.8.5: ⏳ Benchmarks
- M3.8.6: ⏳ Gate
79 tests passing total (62+5+7+5 from optimizer_sink)