Repository navigation
v6.38.0 — two-layer aggregation engine cache (ADR-227)
Added
- Two-layer aggregation engine cache (ADR-227, SPEC-227-A).
- Layer 1: per-request memoisation via
ContextVar. Repeated calls within one render for the same(profile_id, source_diagram_id)(or the same element row / count / display name) share a single result. - Layer 2: process-wide version-keyed LRU (
maxsize=512). On hit, two validation queries (profileupdated_at+ batched diagramscurrent_version) replace the 50–150 engine queries. - Implicit invalidation via version bumps — no explicit eviction hooks.
- New
AggregationResult.profile_updated_atfield supports revalidation.
- Layer 1: per-request memoisation via
PR: #258