Currently, --emptytree adds all already-installed packages into the package graph. However, it still considers them installed when evaluating cyclic deps. When this is used for system-wide rebuild, it could lead to subtly wrong ordering of packages. I think it would be helpful to have an option that would also ignore previously-installed packages for the purpose of dependency satisfaction. In particular, whenever cyclic deps are involved, it would trigger an error rather than using arbitrary rebuild order. This is particularly a problem for the time64 transition. Since the pre-rebuild libraries are technically incompatible with the post-rebuild libraries, we need to consider cyclic deps like for bootstrap.