Skip to content

Docs: boundary note — embeddings/PPR/similarity are out-of-scope for the symbolic core (inject precomputed scores) #148

Description

@se-jo-ma

Context (boundary doc / decision). A reviewer mapping MemGraphRAG onto fathom will be tempted to bolt embeddings / cosine-similarity bridging / Personalized-PageRank into the engine. Fathom matching is exact/symbolic — no numpy/cosine/embedding/PPR anywhere; InMemoryFactStore._matches is exact slot-equality. The paper's detection-by-semantic-similarity, embedding-similarity bridging, and the entire PPR retrieval algorithm require numeric vector ops + graph structure fathom does not and should not host. This is a hard boundary worth documenting before someone violates the determinism/explainability charter.

Recommendation (document the boundary + the one viable seam).

  • Fathom adjudicates (symbolic consistency/governance); an external vector/graph store does retrieval + similarity bridging + PPR.
  • Reference recipe: caller register_function('similar', fn) exposing a precomputed cosine-similarity predicate (name must avoid the reserved fathom- prefix), consulted via a standalone (test (similar ...)) CE.
  • A vector/graph-backed FactStore could implement the Protocol, but _matches would need a similarity-query extension — explicitly out-of-scope for the symbolic core.

Where.

  • src/fathom/engine.py register_function :720 (RESERVED_FUNCTION_PREFIX='fathom-' :44, _USER_FN_NAME_RE :53).
  • src/fathom/fleet.py FactStore Protocol :21 + InMemoryFactStore._matches :66 (exact-equality only).
  • src/fathom/models.py ConditionEntry.test :116 (raw-CLIPS escape hatch).

Acceptance criteria.

  • A docs page states embeddings/PPR/similarity are out-of-scope for the symbolic core, with the register_function precomputed-predicate recipe as the supported seam.

Why it matters. Cheap guardrail; the cost of not writing it is contributors attempting to bolt PPR/embeddings into the symbolic engine.


Source: arXiv:2606.00610v1 — "MemGraphRAG: Memory-based Multi-Agent System for Graph Retrieval-Augmented Generation". Distilled from arXiv-research/2606.00610v1/analysis.md; file refs verified against current main by the analysis pass.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P3Low priority: doc hygiene, cosmetic, sweepdocumentationDocumentation improvementsneeds-decisionApproach not yet settled — please don't open a PR yetsize/S<half-day: small focused change

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions