Skip to content

v0.2.8

Choose a tag to compare

@het0814 het0814 released this 17 Jul 22:13
· 300 commits to main since this release
32d83bd

Release Notes for v0.2.8

This release adds OKF (Open Knowledge Format) export/migrate/sync support for portable, human-readable memory bundles, a VoltAgent TypeScript SDK integration, several new benchmark suites (Memanto vs. Mem0, adversarial resilience, multi-adapter retrieval), and a large batch of temporal recall correctness fixes covering TTL expiry, timezone-aware timestamps, tag filters, and limit validation.

New Features

  • OKF export / migrate / sync (memanto/app/services/okf_export_service.py,
    memanto/cli/migrate/okf_loader.py, memanto/cli/commands/{memory_mgmt,migrate}.py)

    • New --okf flag on memanto memory export / memanto memory sync writes
      an Open Knowledge Format v0.1
      bundle: one markdown file per memory (or a stacked file per type once a
      type exceeds a size threshold), YAML frontmatter, grouped by memory type.
    • Memanto-only fields (id, confidence, provenance, source, status) are
      preserved under a namespaced x_memanto frontmatter block so
      Memanto → OKF → Memanto round-trips are lossless; other OKF consumers
      ignore the unknown keys.
    • memanto migrate gains an OKF source: memanto migrate <agent> --okf <path>
      imports an OKF bundle back into an agent, alongside the existing
      Mem0/Letta/Supermemory sources.
  • VoltAgent TypeScript SDK integration (sdks/typescript/src/integrations/voltagent.ts)

    • New @voltagent/core integration mirroring the existing AI SDK / Mastra /
      OpenAI integrations, with its own test suite and dependency wiring.
  • New benchmark examples (examples/benchmarks/)

    • memanto-vs-mem0: live head-to-head harness with pluggable adapters,
      an evaluator, dashboard, and reporter.
    • memanto-vs-mem0-persona: shifting-persona/temporal-preference retention
      benchmark (5 sessions, 22 turns, 7 contradictions).
    • temporal-memory-showdown: dedicated timeline/temporal-amnesia benchmark
      with its own metrics and dataset.
    • submission_freq1062: multi-adapter raw-retrieval benchmark (Mem0, Letta,
      Supermemory, Cognee, Zep/Graphiti, vector baseline) against LoCoMo and
      MemoryAgentBench datasets.
    • Adversarial memory resilience benchmark.

Improvements

  • Temporal recall correctness (memanto/app/services/memory_read_service.py,
    memanto/app/utils/temporal_helpers.py, memanto/app/routes/memory.py)

    • Large batch of fixes to the recall/as-of/changed-since temporal paths:
      • Tag filters are now actually applied on temporal recall (tags was
        accepted but silently dropped).
      • Date-only as-of queries (e.g. 2026-06-01) now include the full day
        instead of being treated as midnight.
      • Malformed/unparseable timestamps are now skipped instead of raising
        during temporal filtering.
      • changed-since sorting no longer breaks on memories with a null
        updated_at.
      • Delete-and-recreate updates that briefly expose both the old and new
        document with the same id now resolve to the newest version by
        timestamp (previously could return the stale duplicate).
      • The candidate pool fetched from Moorcheh is now widened when
        post-retrieval filters (tags, type, temporal bounds) are active, so
        filtering no longer starves the result set below the requested limit.
      • Temporal recall limits are now validated before hitting the backend and
        capped to sane defaults; boolean and non-positive limits are rejected;
        duplicate recall-limit validation logic was consolidated into one shared
        helper.
    • Session expiry: session info now handles timezone-aware expiry
      timestamps consistently, fixing spurious "session expired" states.
  • LangGraph integration (integrations/langgraph/langgraph_memanto/{nodes,tools}.py)

    • Refined recall/remember node behavior; expanded test coverage
      (tests/test_nodes.py).

Tests

  • New tests/test_okf.py, tests/test_memory_read_as_of.py,
    tests/test_memory_read_temporal_recall.py, and substantial expansion of
    tests/test_temporal_helpers.py, tests/test_api.py, tests/test_cli.py,
    and tests/test_unit.py covering every temporal-recall fix above plus OKF
    round-tripping.

Full Changelog

Full Changelog: v0.2.7...v0.2.8