I18 Issue injecting keys

Hey All,
I’ve noticed that dry-validation is injecting values into Rails I18n.

After loading a contract with i18n two keys are being added.

:acceptance=>“must accept %{key}” (under :errors)
:or=>“or” (on root)

I’ve created a clean rails app and tested on the console to show what’s happening.

ruby ‘2.5.3’
gem “dry-validation”, “~> 1.2.1”
gem ‘rails’, ‘~> 5.2.3’

errors.en.yml file is basically empty.

Loading development environment (Rails 5.2.3)
irb(main):001:0> class ApplicationContract < Dry::Validation::Contract
irb(main):002:1> config.messages.backend = :i18n
irb(main):003:1> config.messages.load_paths << File.join(Rails.root, “config”, “locales”, “dry-validations”, “errors.en.yml”)
irb(main):004:1> end
irb(main):005:0>
irb(main):006:0> I18n.translate(:test) # force load translations
=> “translation missing: en.test”
irb(main):007:0> I18n.backend.translations[:en][:dry_validation].present?
=> false
irb(main):008:0>
irb(main):009:0> class SomeContract < ApplicationContract
irb(main):010:1> json do
irb(main):011:2* required(:order).hash do
irb(main):012:3* required(:count).value(:string)
irb(main):013:3> required(:middle_name).value(:string, max_size?: 4)
irb(main):014:3> end
irb(main):015:2> end
irb(main):016:1> rule(“order.count”) do
irb(main):017:2* key.failure(:bool?) if 1 + 1 == 2
irb(main):018:2> end
irb(main):019:1> end
=> #<Dry::Validation::Rule keys=[“order.count”]>
irb(main):020:0> I18n.backend.translations[:en][:dry_validation][:errors][:acceptance].present?
=> true
irb(main):021:0> I18n.backend.translations[:en][:dry_validation][:or].present?
=> true

It’s not Rails I18n, it’s just I18n. When you configure dry-validation to use I18n, it’s gonna add its keys to the translations. Is this a problem for some reason?