So what happens in that ubiquity takes the list of packages to remove (minimal-remove) from the seed, and marks them for removal; but does not remove any packages no longer needed by those. Hence, the autoremovals are correct - these packages are no longer needed.
There is a further complication, as some of the packages have maintainer scripts: The blacklist only works for packages without maintainer scripts, hence we can't simply extend the blacklist with these packages. The reason for that is simple: We avoid copying the files of these packages.
Possibly we should run apt-get autopurge after copying it all.
So what happens in that ubiquity takes the list of packages to remove (minimal-remove) from the seed, and marks them for removal; but does not remove any packages no longer needed by those. Hence, the autoremovals are correct - these packages are no longer needed.
There is a further complication, as some of the packages have maintainer scripts: The blacklist only works for packages without maintainer scripts, hence we can't simply extend the blacklist with these packages. The reason for that is simple: We avoid copying the files of these packages.
Possibly we should run apt-get autopurge after copying it all.