ExclusiveFenced
/exclusive-fenced Tier 2
Distributed lock with monotonically increasing fence counter. Background goroutine renews the lease at ttl/3; if renewal fails, the action context is canceled immediately to abort in-flight work. The handler can retrieve the lease and pass the fence to downstream storage.
Signature
action contract.ExclusiveFenced(m FencedMutex, ttl time.Duration, keyFn func(Req) string) *Builder[Req, Res]