I just tested and only changing to this will break a lot of tests. Now I could trace why we are using `set` in the `[]` method.

These are the places:

https://github.com/rails/rails/blob/master/activemodel/lib/active_model/errors.rb#L300
https://github.com/rails/rails/blob/master/activemodel/lib/active_model/errors.rb#L337
https://github.com/rails/rails/blob/master/activemodel/lib/active_model/errors.rb#L143
https://github.com/rails/rails/blob/master/activemodel/lib/active_model/errors.rb#L162