I would also find it a mistake, since it behaves completely inconsistently, only for hashes with keys like Symbol:
test({a:1})
test({'a' => 1})
method(:test).parameters
=> [[:opt, :x], [:key, :y]]
You can pass both arguments and start assigning them correctly, but this is not a solution.
test({a:1}, {y:false}) # nil
Any reason why this is not an error but the expected behavior?
source
share