Caught 2026-05-07: hex strings passed to MCP tool args > ~4500 chars get a 1-byte truncation + structural rearrangement somewhere between Claude Code and aldabra's stdio reader. Pallas + aldabra-core's hex_decode are byte-clean (verified via crates/aldabra-dao/examples/ repro_script_corruption.rs); the corruption is purely in the JSON-RPC-over-stdio transport layer. Workaround: accept reference_script_path that points at a file inside the aldabra container. Caller docker-cp's the hex file in, passes the path via MCP arg, aldabra reads bytes locally — no large strings cross the JSON-RPC wire. Applies to wallet_send + wallet_send_unsigned. wallet_plutus_mint_* tools still ride the hex-string path (small policies only, < 4500 chars). When we hit a Plutus policy that needs the workaround, port the same pattern. |
||
|---|---|---|
| .. | ||
| aldabra-chain | ||
| aldabra-core | ||
| aldabra-dao | ||
| aldabra-mcp | ||