Enum value breaks old clients
Review this Java change that adds a new value to an order-status enum returned by a public API. The server side is shown; clients deserialize `status` into their own enum.
What a strong answer looks like
Separate real bugs from style. Rank issues by severity, point at the root cause rather than the symptom, and suggest a concrete fix, specific and kind.
0:00 of about 20 min
Mark a line and say what kind of problem it is.0 findings
1public enum OrderStatus {
2 PENDING, PAID, SHIPPED, DELIVERED,
3 PARTIALLY_REFUNDED; // newly added this release
4}
5
6// serialized as: { "status": "PARTIALLY_REFUNDED" }
7@GetMapping("/orders/{id}")
8public OrderDto get(@PathVariable String id) {
9 Order o = service.find(id);
10 return new OrderDto(o.getId(), o.getStatus());
11}
Which questions mattered is sealed until you submit. Telling you now would just be handing over the edge cases.
Run or narrate your approach, then ask the coach.