Files
poimen-memory/crates/mem-store/Cargo.toml
T
Story Crater Bot 43829afc79 feat: M3.8.2 ingest-time optimization integrated into rebuild.rs
Integrated pluggable OptimizerService into the rebuild pipeline (PASS 2).

Key Changes:
 ContextOptimizer called before node storage
 Graceful fallback: uses original text on optimization failure
 OptimizationMetrics collected and logged per-project
 Backward compatible: optimization disabled if env var not set
 SHA computed on original text (idempotence preserved)
 Optimized text stored in node.text field

Benefits:
- Reduces storage footprint before embedding
- Improves pgvector embeddings (cleaner input text)
- Improves OpenSearch BM25 ranking (better content)
- All queries benefit (both ingest and query optimizations now active)

Tests Added:
- test_memory_sha_stable_with_optimization
- test_optimization_metrics_initialization
- test_optimization_metrics_aggregation

Integration:
- mem-store now depends on mem-ingest
- Requires env var MEM_CONTEXT_OPTIMIZER to enable (default: off)
- Logs summary via tracing (uses structured logging)
- Metrics exported for Prometheus (via MetricsCollector)

Performance:
- ~5ms overhead per record (negligible vs embeddings)
- <50% remaining size target for typical log data
- Async-safe (uses Arc<Mutex> for thread safety)

Status: All tests passing (6/6 rebuild tests)
Ready for: M8.2 dual-write indexer integration
2026-08-28 12:41:30 -07:00

20 lines
489 B
TOML

[package]
name = "mem-store"
version = "0.1.0"
edition = "2021"
[dependencies]
mem-core = { path = "../mem-core" }
mem-ingest = { path = "../mem-ingest" }
tokio = { workspace = true }
futures = { workspace = true }
serde = { workspace = true }
serde_json = { workspace = true }
anyhow = { workspace = true }
thiserror = { workspace = true }
tracing = { workspace = true }
sqlx = { workspace = true }
pgvector = { workspace = true }
uuid = { workspace = true }
sha2 = { workspace = true }