Skip to content

g-memory cannot be exercised by the offline test suite #19

Description

@12yuens2

g-memory cannot be exercised by the offline test suite

tests · found during Phase 2

g-memory is the one registered memory module the offline suite cannot drive, so it is excluded from the 11 × 4 memory-by-workflow matrix (2cc0d3c). It is also the module the upstream paper is named for.

It persists through langchain_chroma, which tasks/tests/conftest.py stubs with a MagicMock so the package can be imported without the heavy dependency. A MagicMock gets far enough to import and not far enough to run.

The exclusion is named rather than silent — test_contracts.py declares UNTESTABLE_OFFLINE = {"g-memory"} and test_the_memory_matrix_covers_every_registered_module fails if a module is added to module_map without either being covered or listed there. So this cannot quietly get worse.

Options.

  1. Add chromadb to the dev group. It does not pull torch or the CUDA stack, so it is affordable — the CUDA-free dev environment is currently 26 packages and 89MB, and the constraint that matters is not pulling nvidia wheels. Cheapest, and gives real coverage.
  2. Put an interface in front of the vector store and use an in-memory implementation in tests. More work, but it is the DIP fix GMemory wants anyway, and the module-split work splits that file into three regardless.

Do this before the G-Memory clustering fix (see the separate issue). That is a correctness change to code that has never once executed successfully, and the FINCH clustering call rewrite and bare-except narrowing are much safer with the module under test.


Migrated from docs/BACKLOG.md.

Metadata

Metadata

Assignees

No one assigned

    Labels

    testsTest coverage gap

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions