Answer
This is intentional, not a bug — IFS's error-raising mechanism (Error_SYS.Record_General) can only ever return a single error detail record, but it's wrapped in an array in the REST response specifically to conform to the OData protocol's error-response format guidelines, which expect error details to be structured as an array even when only one item is present.