To get the ConstraintMetaModel at build time in a Quarkus extension, it is necessary to depend on the solver-quarkus extension and its SolverConfigBuildItem.
While depending on other extension's build item(s) is the way collaboration between extensions has been designed in Quarkus, it's a weak dependency: there is no guarantee of the build item to be still produced by the upstream extension or its class being still present in a compatible way.
Proposal:
- move the
SolverConfigBuildItem to an api subpackage
- configure Revapi to make sure we don't break it
- as an alternative, expose a build item representing the
ConstraintMetaModel