For an order-message boundary, I would keep valid JSON with volume: 0 as a negative fixture beside a correctly typed, permitted quantity. Also keep a missing quantity separate from null: parser success and a successful HTTP response must not stand in for an accepted order state. Return the field-specific failure before any order submission, so a transport retry cannot hide a validation failure.
Arnold Holm
Challenge Pre-Check: know before you risk. Your rules, tested against prop limits. Historical simulation, not a forecast.
For an order-message boundary, I would keep valid JSON with volume: 0 as a negative fixture beside a correctly typed, permitted quantity. Also keep a missing quantity separate from null: parser success and a successful HTTP response must not stand in for an accepted order state. Return the field-specific failure before any order submission, so a transport retry cannot hide a validation failure.