We had to calculate the gasLimit because, in a previous node version, it was considered as is, resulting in a lot of unused space in blocks. In recent node versions, it got fixed, so we can set the max value there.
From the other side, setting the maximum will complicate the fee estimation on the wallet side.
If we don't make any changes to gasLimit, then state in the batch request guide that setting it to a value will avoid sdk making a dry-run request.