That isn't a problem in Sequel, as you can pass a complex expression to #or, in which case it works as you would expect it to:
Post.where(id: 1).or(Sequel.&({:id=>2}, {:name=>'Foo'}))
# SELECT * FROM posts WHERE ((id = 1) OR ((id = 2) AND (name = 'Foo')))