| | import pytest
|
| | from mnemocore.core.meta_memory import MetaMemoryService
|
| |
|
| | def test_meta_memory_metrics():
|
| | meta = MetaMemoryService()
|
| |
|
| | meta.record_metric("inference_time_ms", 120.5, window="1m")
|
| | meta.record_metric("inference_time_ms", 130.0, window="1m")
|
| | meta.record_metric("token_count", 500, window="1h")
|
| |
|
| | assert len([m for m in meta.list_metrics() if m.name == "inference_time_ms"]) == 2
|
| | assert len([m for m in meta.list_metrics() if m.name == "token_count"]) == 1
|
| |
|
| | import pytest
|
| | from datetime import datetime
|
| | from mnemocore.core.meta_memory import MetaMemoryService
|
| | from mnemocore.core.memory_model import SelfImprovementProposal
|
| |
|
| | def test_meta_memory_proposals():
|
| | meta = MetaMemoryService()
|
| |
|
| | proposal = SelfImprovementProposal(
|
| | id="prop1",
|
| | created_at=datetime.utcnow(),
|
| | author="system",
|
| | title="Reduce Temp",
|
| | description="Agent repeats tools too often",
|
| | rationale="Reduce temperature or augment prompt with history",
|
| | expected_effect="Less tool looping",
|
| | status="pending",
|
| | metadata={"confidence": 0.85}
|
| | )
|
| |
|
| | meta.create_proposal(proposal)
|
| |
|
| | proposals = meta.list_proposals()
|
| | assert len(proposals) == 1
|
| |
|
| | p = proposals[0]
|
| | assert p.status == "pending"
|
| | assert "reduce temperature" in p.rationale.lower()
|
| |
|
| |
|
| | meta.update_proposal_status(p.id, "approved")
|
| |
|
| | proposals2 = meta.list_proposals()
|
| | assert proposals2[0].status == "approved"
|
| |
|