Let me say first of all that I'm glad they're working on standardizing this. When making REST APIs, I find HTML form scaffolds incredibly useful, but it means that you probably have to accept both JSON (because JSON is reasonable) and occasional form-encoding (because forms), leading to subtle incompatibilities. Or you have to disregard HTML and turn your forms into JavaScript things that submit JSON. Either way, the…
But if you have a bug which produces a form with multiple fields with the same name, what should it do? I can think of two strategies: last one wins and the proposal.
Both are probably going to lead to things going wrong in the backend. At least with the proposal you:
A) can detect it with boilerplate that looks for arrays where you expect primitives.
B) figure out what the original data was if you need to try and manually repair it.
I'm sure we'll see lots of bad tutorials suggesting you just use the same field name to make an array though :(