Fixed
xbbg-mcpno longer mistakes a failed stdin worker or abnormal service stop for clean EOF. Stderr diagnostics are now best-effort instead of usingeprintln!, whose panic on a closed host log pipe could kill the detached reader and recreate the silent exit from #348. The reader reports its terminal state out of band before closing the transport; read failures, worker panics, unexpected transport closure, task failures, cancellation, and reader-thread spawn failures now reachmainas errors and return a nonzero process status.- The Windows MCPB launcher now guarantees that the Bloomberg DLL it validates is the one the loader can select. The chosen runtime directory becomes the child's working directory and first
PATHentry, while a higher-priorityblpapi3_64.dllbeside the executable or in a Windows system directory is rejected rather than silently shadowing the checked file. Candidates with unreadable version metadata are skipped; packaging fails closed when the binary exposes no versioned Bloomberg imports;--min-blpapi-versionaccepts only a canonical three- or four-part numeric version; and loader-status messages no longer blame a specific module without evidence. - MCPB release artifacts are now reproducible and built with integrity-locked tooling. A locked
fflate0.8.2 compressor writes sorted members with fixed timestamps and explicit Unix modes, so rerunning the same tag with identical binaries preserves both the executable launchers and the MCPB SHA-256 recorded in the official registry. The workflow also installs exactly@anthropic-ai/mcpb2.1.2 from the committed npm lockfile, overrides its vulnerable transitivetmpdependency with patched 0.2.7, disables lifecycle scripts, runs the packer regression tests, and uses the pinned CLI to validate and inspect the deterministic archive instead of executing mutablelatestcode.
Full Changelog: v1.4.10...v1.4.11