Files
fleetd/bridged
Dai Ha 8a837a2830
CI / contract (pull_request) Successful in 50s
CI / build (pull_request) Successful in 1m35s
CB-599: surface a capacity refusal's reason instead of a bare 500
PlacementException extends IllegalStateException, which neither BridgedApp
nor BridgeMcp's spawn catch blocks handled, so a maxLoad/quarantine/
all-exhausted refusal fell through to a blank 500 on REST and lost its
message on MCP. Catch it on both surfaces, ahead of the unrelated
IllegalArgumentException(unknown_profile) mapping, and return its message
structured: REST as {"error":"no_capacity","detail":...} with status 503,
MCP as an isError result prefixed "no capacity: ...".
2026-08-16 17:43:07 +02:00
..