dhhがaccepts_nested_attributes_forをkillしたがってる件
https://github.com/rails/rails/pull/26976#pullrequestreview-8449983
代替としてはActiveModel内に頑張って書いていく
form helperのselectのauxiliary hidden field
https://github.com/rails/rails/blob/984c3ef2775781d47efa9f541ce570daa2434a80/actionview/lib/action_view/helpers/form_options_helper.rb#L137-L143
multiple: true
にする場合は補助的なhiddenタグがデフォルトで追加されます。
この挙動が不要な場合はinclude_hidden: false
で無効にすることができます。

html.erb
<%= form_with do |form| %>
<%= form.select("person_name", ["佐藤", "鈴木", "高橋"], {}, { multiple: true }) %>
<% end %>
htmlの出力結果
<form action="/home/form_options_helper_select" accept-charset="UTF-8" method="post"><input type="hidden" name="authenticity_token" value="xxxx" autocomplete="off" />
<input name="person_name[]" type="hidden" value="" autocomplete="off" /><select multiple="multiple" name="person_name[]" id="person_name"><option value="佐藤">佐藤</option>
<option value="鈴木">鈴木</option>
<option value="高橋">高橋</option></select>
</form>
rails cでも確認できる
[35] pry(main)> helper.select("post", "person_name", ["佐藤", "鈴木", "高橋"], {}, { multiple: true })
=> "<input name=\"post[person_name][]\" type=\"hidden\" value=\"\" autocomplete=\"off\" /><select multiple=\"multiple\" name=\"post[person_name][]\" id=\"post_person_name\"><option value=\"佐藤\">佐藤</option>\n<option value=\"鈴木\">鈴木</option>\n<option value=\"高橋\">高橋</option></select>"