The reasons `IsFirst` is passed through here is because `bucket_type_is_first()` must be called before the operation has completed otherwise the warning is never printed (the check finds the just activated typed, which is the condition for skipping the warning). But perhaps there is still a way to clean that up...