It seems like relying on a 200 response is too late if the server doesn't send multiple ranges:
Let's add an API to the Appendable constructor to disable it, something like Appendable.init(...,..., { useMultipartByteRanges: false })
and if we get a 200, warn the user if this flag is not set.