From c0c914f98723e4999b728e4ccfeefb26c99840be Mon Sep 17 00:00:00 2001 From: devinmlowe Date: Mon, 21 Sep 2026 09:10:20 -0500 Subject: [PATCH] test(hermes-plugin): force the e2e real-server child inline (#138) test_stdio_e2e_real_server.py spawned dist/interfaces/mcp/server.js without --standalone, so on a machine with the daemon up the stdio start bridged to it and the `remember` call landed in the production database. Set ENGRAM_MCP_STANDALONE=1 via the fixture's `extra_env` so the child always runs inline against the temp ENGRAM_DB_PATH. #87 already makes an ENGRAM_SCOPE-carrying start run inline; this makes the test's hermeticity explicit rather than a side effect of that rule. Closes #138 Co-Authored-By: Claude Opus 5 (1M context) Claude-Session: https://claude.ai/code/session_017FkPTUntBVpcD9ta58zaHs --- interfaces/hermes-plugin/tests/test_stdio_e2e_real_server.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/interfaces/hermes-plugin/tests/test_stdio_e2e_real_server.py b/interfaces/hermes-plugin/tests/test_stdio_e2e_real_server.py index c2d2ccb..36f68b4 100644 --- a/interfaces/hermes-plugin/tests/test_stdio_e2e_real_server.py +++ b/interfaces/hermes-plugin/tests/test_stdio_e2e_real_server.py @@ -1,6 +1,8 @@ """End-to-end: EngramMemoryProvider against the REAL built engram MCP server. -Uses a temp SQLite DB (ENGRAM_DB_PATH) — the live graph is never touched. +Uses a temp SQLite DB (ENGRAM_DB_PATH) and forces the child inline +(ENGRAM_MCP_STANDALONE=1) so it never bridges to a running daemon (#138) — +the live graph is never touched. Requires dist/interfaces/mcp/server.js (npm run build) and the local embedding model cache; skips cleanly when the build is absent. """ @@ -34,6 +36,7 @@ def make_provider(tmp_path, profile): "repo_path": REPO_ROOT, "db_path": str(tmp_path / "e2e-engram.db"), "budget": 800, + "extra_env": {"ENGRAM_MCP_STANDALONE": "1"}, }) ) p = EngramMemoryProvider()