{"id":"fencing-no-exceptions-on-denial","text":"All denial conditions in fencing tokens (lock held, stale token, wrong client) return sentinel values (`None`, `False`, or error dicts) rather than raising exceptions, modeling distributed system responses","truth_value":"IN","source":"entries/2026/05/29/fencing-tokens-fencing_tokens.md","source_url":"","source_hash":"","justifications":[],"dependents":[],"metadata":{},"explanation":{"steps":[{"node":"fencing-no-exceptions-on-denial","truth_value":"IN","reason":"premise"}]}}