completeScheduleClaim method
Records a schedule completion only while owner still owns lockName.
Claim completion is a fenced operation: the lock owner is checked and the completion record is written within one Durable Object request. A worker whose lease was taken over therefore cannot acknowledge the occurrence after the new owner has acquired it.
Implementation
Future<bool> completeScheduleClaim({
required String lockName,
required String owner,
required String completedKey,
required int completedSeconds,
}) async {
final response = await _request(
'lock_complete',
key: lockName,
payload: <String, Object?>{
'name': lockName,
'owner': owner,
'completedKey': completedKey,
'seconds': completedSeconds,
},
);
return response['completed'] == true;
}