the tl;dr is that pkgconf 2.x requires all dependency nodes except for ones explicitly marked as weak (Requires.internal) to be satisfiable, even if data from those dependency nodes are not used.
this is on purpose. it is an intentional feature of the new solver.
the purpose is to ensure that the calculated solution for a given query is always the same, regardless of what data product is distilled from the query!
debian decided to revert a commit which makes the solver treat Requires.private as a strong dependency node if --static is not requested.
this is NOT conformant with how pkg-config has ever been *intended* to work. that it *used* to work was a bug that is now fixed.