Skip to content

chore: release v2.3.1#233

Merged
tirth8205 merged 1 commit intomainfrom
release/v2.3.1
Apr 11, 2026
Merged

chore: release v2.3.1#233
tirth8205 merged 1 commit intomainfrom
release/v2.3.1

Conversation

@tirth8205
Copy link
Copy Markdown
Owner

Summary

Patch-level release for the Windows long-running-MCP-tool hang. v2.2.4 shipped the event-loop policy fix but Limucc's test on #136 showed that was necessary but not sufficient — read-only tools worked, but build_or_update_graph_tool and embed_graph_tool still hung indefinitely. #231 fixed the remaining problem by converting 5 heavy tools to async def + asyncio.to_thread.

What's in this release

That's it. No other changes from v2.3.0.

Test plan

After merge

Tag, publish to PyPI, comment on #46 and #136 asking Limucc to re-test with uvx code-review-graph@2.3.1.

🤖 Generated with Claude Code

Hotfix for the Windows long-running-MCP-tool hang that v2.2.4 only
partially fixed.

- #46 / #136 — converted 5 heavy MCP tools to async + asyncio.to_thread
  so the stdio event loop stays responsive during full builds,
  postprocessing, embeddings, change detection, and wiki generation.

@dev-limucc's v2.2.4 test on #136 showed read-only tools worked but
long-running ones still hung. Root cause: FastMCP 2.x dispatches sync
handlers inline on the only event-loop thread; a 10-second handler
freezes stdin/stdout for 10 seconds. Fix: wrap the work in
asyncio.to_thread so the loop keeps pumping.

Verified locally on Python 3.11 / macOS: ruff clean, mypy clean,
bandit clean, 737 tests (+2 new lock-in tests), coverage 74.63%.

Windows verification post-release — will ping @dev-limucc on #136
once 2.3.1 is live on PyPI.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@tirth8205 tirth8205 merged commit 02a7bc5 into main Apr 11, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant