Summary
ExecuteBatchQuery at /Users/widthdom/Projects/mine/cdidx/CodeIndex/src/CodeIndex/Mcp/McpToolHandlers.cs:1215 returns resultsArray.Count in the summary, but this conflates errors (blocked write operations, missing tool names, validation failures) with actual executed queries. A batch with 10 queries where 8 fail validation will still report "Executed 10 queries" even though only 2 actually ran. This misleads AI clients about batch completion scope and success rate.
Where
McpToolHandlers.cs:1127-1219
McpToolHandlers.cs:1215 result count aggregation
Suggested approach
- Split resultsArray counting into
successCount and errorCount tracks during loop.
- Track
actuallyExecuted separately from totalSubmitted.
- Return both counts in the payload:
["submitted"] = queries.Count, ["executed"] = actuallyExecuted, ["errors"] = errorCount.
- Update summary text to report "Executed X of Y queries (Z errors)" format.
- Add fixture tests covering 100% error batches, partial-error batches, and all-success batches.
- Document in tool definition that count reports actual executions, not input batch size.
Summary
ExecuteBatchQueryat /Users/widthdom/Projects/mine/cdidx/CodeIndex/src/CodeIndex/Mcp/McpToolHandlers.cs:1215 returnsresultsArray.Countin the summary, but this conflates errors (blocked write operations, missing tool names, validation failures) with actual executed queries. A batch with 10 queries where 8 fail validation will still report "Executed 10 queries" even though only 2 actually ran. This misleads AI clients about batch completion scope and success rate.Where
McpToolHandlers.cs:1127-1219McpToolHandlers.cs:1215result count aggregationSuggested approach
successCountanderrorCounttracks during loop.actuallyExecutedseparately fromtotalSubmitted.["submitted"] = queries.Count,["executed"] = actuallyExecuted,["errors"] = errorCount.