The cache handed to build_binary_package() as s3_package_cache was the raw
bucket listing, and the build list subtracted the same listing. Neither could
tell a binary from a package whose build failed and was published as its CRAN
source, so every source fallback read as "already built" and was skipped for
good - which is how alpine324 accumulated ~13.5k of them.
- drop objects the slot's index reports as served from source, which bincraft
marks by leaving the Built stamp off
- build s3_dt from the filtered listing too, since it is subtracted from the
build list and would otherwise exclude the packages that need building
- log how many objects were dropped
Archived objects have no index record and are kept: unknown means binary, never
"rebuild it". A slot last indexed by a bincraft that predates the Built change
stamps everything, so its cache is unchanged from before.