I'm not sure we need a priority at runtime here. We could consider that providers run in the order in which they are registered, and implement the sorting in the compiler pass so that it is done at build time (some places are working this way in Symfony or bundles already)