Is there something I can improve on this front? In other words, how can the design become smarter?

It's hard to answer this because I don't really understand exactly
how the scheduler works, but what I frequently see is.

1. The set of pins that britney chooses don't work.
2. The fallback dependency solver is invoked, this successfully
   installs the packages, but causes a mismatch between the tests
   (taken from testing) and the package under test (taken from unstable
   due to the fallback dependency solver).
3. The mismatch between tests and package under test causes a failure.

This often happens in complex dependency graphs, where some but not
all of the dependencies in the graph are broken by the update.
or where some dependencies exist in unstable but not in testing
or vice-versa.

We can often workaround this by tightening dependencies or adding
breaks but each time we do that it resets the tests and the migration
delay time, it can also tie together the testing migration of
things that do not need to be tied together.

I don't know how exactly britney choses what packages to pin, but
it often falls short of the set of "packages that must migrate
together according to the recursive interpretation of the
"migrates after"/"blocked by" in the excuses.

Reply via email to