[dry-types][dry-logic] Generic predicate matcher

I’d like to define a constraint based on the result of a predicate method on an object, e.g. checking if a model is persisted? However, as I understand it, in dry-types, constrained uses only the built-in dry-logic predicates.

What do you think about adding support in dry-logic for something like a generic predicate matcher, which would call the specified method and check if it returns true? For example:

def predicate?(name, input) = true?(input.send(name))

This would allow dry-types constraints like:

Types::Instance(ActiveRecord::Base).constrained(predicate: :persisted?)

Would this be in line with the design goals of dry-logic? If not, is there another recommended approach for this pattern?