Repository navigation
Release v0.3.29 resolves 7 issues across MCP tools, gateway admission & lifecycle, and client cluster failover.
Fixed
- Engine-Aware Subproject & Directory Routing (
crates/prod-code-mcp):
Addedengine_for_pathchecking nested subprojects, path manifests, file extensions, and directory contents for target engines. Integrated withdefault_servescheck inroute_into route Swift test directories (swift/Tests/...) and root Swift projects to compatible nodes instead of immediately failing withTransport closedwhen default node is Linux (#1059). - Single-Node Engine Compatibility Fast-Fail (
crates/prod-code-mcp):
Added engine compatibility validation inpick_node_withfor single-node placements, returning an actionable diagnostic rather than crashing with closed transport (#1060). - Session Pool Engine-Placement Preservation (
crates/prod-code-mcp):
Updatedpooled_query_with_budgetinpool.rsto look up engine-specific placement keys ({workspace}#{engine}) and verifydefault_serves(remembered, eng)before updatingtarget_remote, preventing secondary language sessions (Swift/Python) from being retired and overwritten with incompatible root workspace nodes (#1060). - Interactive CLI Query Timeout Bounding (
crates/prod-code-client):
Wrappedexecute_toolcalls inrun_toolandrun_refs(commands/common.rs,commands/query/navigation.rs) withresolve_tool_call_timeout(&args)and actionable error reporting upon timeout, preventingprod-code defandprod-code refscommands from stalling indefinitely on unindexed symbols or cold language servers (#1061, #1062). - Workspace Sync Benchmark & Dataset Code Preservation (
crates/prod-code-mcp):
Updatedis_path_filtered_with_profileinfilters.rsto detect source files (.rs,.py,.c,.cpp,.ts,.swift, etc.) inside tracked directories namedbenchmarks/benchesordataset/datasets, ensuring tracked benchmark schemas and fixture code reach the remote mirror without breakingcargo checkorpytestruns (#1063, #1064). - Tool Call Execution Timeout Propagation & Ceiling (
crates/prod-code-mcp):
Updatedresolve_tool_call_timeoutindispatch.rsto honor client-specifiedtimeout_secs(andtimeout_millis) with a 5-second buffer, while clamping toMAX_TOOL_CALL_TIMEOUT(24 hours = 86400s). Long-running executions such ascode_execwithtimeout_secs=2400are no longer killed by the default 150s limit (#1065).