A MinIO lifecycle rule that deletes non-current versions with a tag filter never matches anything, so old versions pile up forever. Steps: versioned bucket, objects tagged (e.g. tag-key=tag-value), lifecycle rule to expire non-current versions keeping at most N, filtered on those tags. The same rule without the tag filter works and expires old versions correctly. Seen on RELEASE.2024-11-07T00-52-20Z. Maintainer krisis reproduced it and found the root cause in how tag-filtered lifecycle rules were evaluated.