Actually here's the things I didn't like about Quarkus @BuildStep which I think Qlue inherits too.
* The requirement to extend from Simple/MultiBuild item. This should be annotation based to allow app devs to have their own hierarchy - @SingletonItem.
* Requirement that items are final classes. Simply state that producing/consuming only works per class type.
* Checks should be done at build time, i.e. a class is final, no-generics etc... Having to wait until runtime to find out you've crafted a item or step wrong is just a PITA.
* Primitive types and String can't be consumed/produced
* It is output driven rather than input driven. i.e. you have to specify the output you want. I know this is a feature, not a bug, but the flip side: you have some input and want to see what output is generated is also a useful case.
Honestly, will probably never revisit this project.