Repository navigation
Open
Labels
awaiting-reporterWaiting on the reporter for info/repro; stale bot will warn then closeWaiting on the reporter for info/repro; stale bot will warn then closebugSomething isn't workingSomething isn't workingcypherCypher query language parser/executor bugsCypher query language parser/executor bugspriority/highNeeds near-term maintainer attention; high-impact bug, regression, safety issue, or release blocker.Needs near-term maintainer attention; high-impact bug, regression, safety issue, or release blocker.stability/performanceServer crashes, OOM, hangs, high CPU/memoryServer crashes, OOM, hangs, high CPU/memory
Milestone
Description
Version
latest
Platform
Windows (x64)
Install channel
GitHub release archive / install.sh / install.ps1
Binary variant
standard
What happened, and what did you expect?
Constantly expiriencing tool call timeouts agents default back to using normal commands...
Reproduction
.
Logs
Project scale (if relevant)
No response
Confirmations
- I searched existing issues and this is not a duplicate.
- My reproduction uses shareable code (a dummy snippet or a public OSS repository), not proprietary code.
Metadata
Metadata
Assignees
Labels
awaiting-reporterWaiting on the reporter for info/repro; stale bot will warn then closeWaiting on the reporter for info/repro; stale bot will warn then closebugSomething isn't workingSomething isn't workingcypherCypher query language parser/executor bugsCypher query language parser/executor bugspriority/highNeeds near-term maintainer attention; high-impact bug, regression, safety issue, or release blocker.Needs near-term maintainer attention; high-impact bug, regression, safety issue, or release blocker.stability/performanceServer crashes, OOM, hangs, high CPU/memoryServer crashes, OOM, hangs, high CPU/memory
Activity
DeusData commentedon Jun 16, 2026
Hey, thx for reporting. Can you share more details, like for example server logs, graph details, code language you try to index etc? There are some issue templates with more details :)
Bia10 commentedon Jun 16, 2026
Oh sure i ill ask the current implementation agent who encountered these issues to report back. Here:
Stopped. Here is a paste-ready bug report draft.
Version
codebase-memory-mcp 0.8.1Platform
Windows x64
OS:
Microsoft Windows 10.0.19045Arch:
X64Install Channel
Likely GitHub release archive / install.ps1. Binary path:
C:\Users\Bia\AppData\Local\Programs\codebase-memory-mcp\codebase-memory-mcp.exeBinary Variant
standard / stdio server
Help output says:
Running process command line:
What Happened
search_codeinmode: "full"timed out through MCP after 120 seconds on a C# repo. I expected either a bounded/truncated result, a quick error explaining the result is too large, or a paginated response. Instead the MCP call hung until the client-side timeout.The compact/indexing paths were responsive; the failure happened when asking for full source around a match in a large C# file.
Reproduction
Observed on a private C#/.NET repository, so the exact source cannot be shared. The relevant shape is:
src.csfiles.axamlfilesmode: "fast"Index call:
{ "repo_path": "C:\\path\\to\\repo", "mode": "fast", "persistence": false }Index result scale:
Failing MCP tool call:
{ "project": "C-Users-Bia-source-repos-ArcanumEditor", "pattern": "ShouldDrawImmediateCommittedBaseMissingChunks", "path_filter": "src/Rendering/ArcanumEditor.Rendering.Avalonia/Controls/MapSceneControl.cs", "mode": "full", "limit": 4, "context": 4 }Actual output:
Expected output:
Logs
No obvious standalone log file found under:
Cache DBs found:
Project Scale
7,515 nodes / 23,771 edges / 212 src files / 185 C# filesConfirmations
search_code mode=fullcall shape.DeusData commentedon Jun 26, 2026
Thanks for the detailed follow-up with the exact tool call and file shape — that's
really actionable. A
search_code mode=fullcall on a ~8 k-line file timing out at120 s, on a graph of only 7,515 nodes, is a focused bug we want to reproduce and cap.
To determine whether the server is stuck computing or has exited silently:
Instructions for your coding agent:
The CPU sample (step 3) tells us whether the server is actively working (CPU climbing)
or idle (CPU 0 = stuck on I/O, or already dead). The last log lines show which internal
operation the server was in when the client gave up.
The exact tool call from your follow-up comment is already enough for us to write the
test — we just need the server-side signal to understand what it was doing.
Thank you!
github-actions commentedon Jun 26, 2026
Thanks for the report! To move this forward we need a bit more so we can reproduce it ourselves:
codebase-memory-mcp --versionyou're onOnce that's here we'll pick it straight back up. Heads-up: issues left
awaiting-reporterare automatically closed after a few weeks of silence, but a comment reopens the door anytime.paul5007 commentedon Jul 19, 2026
Additional Linux reproduction from another v0.8.1 deployment, with a substantially larger graph and a different affected tool (
query_graph).Environment:
codebase-memory-mcp 0.8.1, Linux x86_64, stdio MCPExact call:
{ "project": "home-paula-projects-adjurra-platform", "query": "MATCH (a)-[r:CALLS]->(b) RETURN a.qualified_name AS caller, b.qualified_name AS callee LIMIT 50" }Observed behavior:
Transport closed; previous calls were observed at 5–15s solo and beyond a 30s client deadline under loadindex_status/metadata can remain fast while the costly statement is still unbounded, so readiness does not represent query executabilityI also audited the official v0.9.0 source at tag commit
b637e3330c96cfe452da623db068c241aaa3ec01. The application store still sets onlyPRAGMA busy_timeout = 10000insrc/store/store.c. Searches forsqlite3_progress_handlerandsqlite3_interruptfind only the vendored SQLite declarations/implementation, not an application-level per-statement deadline. The v0.9.0 indexing supervisor timeout is valuable but does not bound MCP query execution.SQLite's documented cancellation seams are:
busy_timeoutonly installs a busy handler: https://www.sqlite.org/pragma.html#pragma_busy_timeoutRequested server contract:
sqlite3_interrupt;This is tracked downstream as TF-Insurance-Solutions/adjurra-platform#1336. Exa research was attempted but its connector required OAuth; the evidence above comes from the installed binary, a one-shot execution, the exact v0.9.0 source tag, and official SQLite documentation.
DeusData commentedon Jul 19, 2026
Thanks for the independent Linux reproduction and the exact v0.9.0 source check. I have raised this to high priority in
0.9.1-rcand linked it under #593. Bounded query execution and proving that a timed-out statement cannot poison the next request are now explicit review concerns; the exact public configuration surface still needs design review.DeusData commentedon Sep 26, 2026
Thank you, @Bia10, for the exact tool call and file shape, and @paul5007 for the independent Linux reproduction and the careful source audit!
Both halves have landed:
search_codescans are now bounded and return a typed "exceeded its execution deadline" error instead of hanging until the client gives up (fix(mcp): bound search_code scan deadlines #1866, in v0.11.0).query_graphCypher execution has its own execution deadline (fix(cypher): add a wall-clock execution deadline to abort runaway queries (#601) #1109, since v0.10.0).Could you confirm on v0.11.0 that these calls now either complete or fail fast with that error?
@paul5007, the wider contract you described goes beyond this bug: a configurable per-request deadline, plus a readiness probe that runs a representative statement. We'll consider it separately as an enhancement.
github-actions commentedon Sep 26, 2026
Thanks for the report! To move this forward we need a bit more so we can reproduce it ourselves:
codebase-memory-mcp --versionyou're onOnce that's here we'll pick it straight back up. Heads-up: issues left
awaiting-reporterare automatically closed after a few weeks of silence, but a comment reopens the door anytime.github-actions commentedon Oct 18, 2026
This issue has been waiting on more information for 21 days (a version, exact steps, or a public repro), so it's now marked
stale. It will not be closed automatically — a maintainer reviews stale issues by hand. Adding a comment with the details clears the label and puts it straight back in the queue. We're happy to pick it back up the moment we can reproduce it.DeusData commentedon Oct 25, 2026
Thank you for the Windows and Linux reproductions. If you have already retested after the deadline changes described above, could you share the exact version and whether the call completes or returns a bounded error? The broader configurable-deadline/readiness proposal remains a separate design question.