I'm removing objects like this:
Get-S3Object -BucketName "abilitest-user-staging" -KeyPrefix "content/bundles"
But what will happen to the copies of these objects that were previously sent to CloudFront? Will they stay there for ever?
Objects in cloudfront may be removed at any point, either because their expiry period has been reached (depending on the caching headers the object was served with) or just because cloudfront decided it wasn't worth keeping the copy around.
In addition it's not a simple in cloudfront / out of cloudfront situation: there are many edge locations (50+) and each of those caches the object independently: some locations may never have cached the object in the first place.