Skip to content

Preserve message bodies during verbose logging - #13

Merged
quinnj merged 1 commit into
mainfrom
fix/preserve-bodies-in-verbose-logs
Sep 21, 2026
Merged

quinnj merged 1 commit into
mainfrom
fix/preserve-bodies-in-verbose-logs

Conversation

@quinnj

@quinnj quinnj commented Sep 19, 2026

Copy link
Copy Markdown
Member

With verbose=true, MCP logs convert response byte vectors with String(response.body). That operation takes ownership of the vector and empties it. Discovery then parses an empty manifest, and JSON-RPC calls can fail with an empty-response error. The request logging helper has the same ownership problem for byte-vector input.

Preserve bytes in the shared logging conversion and reuse it for response and discovery logs. Add 18 checks for vector/view/code-unit ownership and real verbose HTTP discovery, initialization, ping, and tool listing.

Validation: the response-buffer reproduction fails on main. Full suites pass on Julia 1.12.6 with HTTP 2 and on Julia 1.10.11 with HTTP 1 explicitly selected. Julia 1.12 trim compilation/execution and the required documentation build/doctests pass.

Co-authored by Codex

@quinnj
quinnj merged commit 6a30ef4 into main Sep 21, 2026
20 of 21 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