mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-08-12 02:02:13 +03:00
process.uptime() returns a number, but the handler ran it through a string-only toString() helper that fell back to "unknown" for anything that wasn't already a string -- so every real uptime value was discarded, 100% reproducibly. Also stop masking upstream fetch failures as fake healthy defaults: when /api/monitoring/health, /api/resilience, or /api/rate-limits can't be reached, the tool now reports which source failed (via a new optional `degraded` field) instead of returning zeros/empty arrays indistinguishable from genuine "no data". Regression coverage dispatches through the real MCP handler (client.callTool) rather than asserting on the mock directly, since the prior mock-only tests could never have caught either bug.