Add a dimension for each artifact type. Use it with collection dimensions to select an artifact.
Command annotations expose projected target types: @check becomes Check, @generate becomes Generator, and @agent becomes AgentMiddleware. dagger up selects plain Service artifacts; it does not require @up. Decide the need for annotation intent for each command. Module function signatures stay unchanged.
For example, these checks belong to the same Go module:
go/modules/test