fix(ilm): fail closed on unsafe manual job recovery

Mark expired manual transition jobs Unknown when recovery cannot prove queued worker outcomes are durable. Enforce ETag-guarded admission release with exact delete preconditions so stale releasers cannot remove a replacement admission, while still allowing drained cancelled jobs to terminate.

Co-Authored-By: heihutu <heihutu@gmail.com>
This commit is contained in:
houseme
2026-07-26 12:19:27 +08:00
parent 02ad75e552
commit 7cf6ea6e9e
5 changed files with 446 additions and 27 deletions
@@ -3070,6 +3070,7 @@ impl crate::storage_api_contracts::object::ObjectOperations for SetDisks {
}
if version_found {
opts.precondition_check(&goi)?;
check_object_lock_delete(bucket, object, &goi, &opts).await?;
}