Stop default openmemory_query from dropping the HTTP session - #212
Open
vincenzopalazzo wants to merge 2 commits into
Open
Stop default openmemory_query from dropping the HTTP session#212vincenzopalazzo wants to merge 2 commits into
vincenzopalazzo wants to merge 2 commits into
Conversation
Default openmemory_query runs HSG with no timeout, so a hung embed or vector writeback dropped the Streamable HTTP POST. Catch HSG failures as MCP tool errors, time out after 12s, and cap unpatterned factual dumps at k. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 70a92566a7
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Offload sync sqlite fetchall to a worker thread so asyncio.wait_for can fire, return CallToolResult(isError=true) on query failure, and drop the default timeout to 8s so it beats Streamable HTTP (~10s). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
openmemory_query(type=contextual) ranhsg_querywith no try/catch or timeout. A hung embed, rate-limit throw, or long vector writeback dropped the per-request Streamable HTTP POST (Streamable HTTP error: Error POSTing to endpoint, empty status), so the first query looked like a total outage.OM_MCP_QUERY_TIMEOUT_MS) and return a normal MCP tool error (isError+ readable message) instead of letting the transport die. Unified queries fail-soft on HSG and still return facts.k(patterned queries still cap at 32). Same fail-soft + cap on the Python MCP path.Test plan
npx vitest run tests/mcp_query_failsoft.test.ts(7 tests)npm testinpackages/openmemory-js(65 tests)npm run typecheckopenmemory_querywith notypereturns a tool result orisError, never a transport droplist/get/store/delete/type=factualwithfact_patternstill work