@@ -73,6 +73,20 @@ draining removes only that request's pending hold, leaving successor and unrelat
7373canceling activation does not cancel the mutations being drained. Completed holds use their TTL or
7474explicit release lifecycle.
7575
76- Holds, like leases, are in-memory and do not survive daemon restart. Controllers must reconnect and
77- re-establish them; no persisted hold store is used. Local takeover is deferred: a future host-global
78- human-control fence must coexist with the local session's device claim, not acquire it exclusively.
76+ Holds and ordinary proxy leases are in-memory and do not survive daemon restart. Controllers must
77+ reconnect and re-establish them; no persisted hold store is used. Local takeover is deferred: a
78+ future host-global human-control fence must coexist with the local session's device claim, not
79+ acquire it exclusively.
80+
81+ ## Host managed-device durability amendment
82+
83+ ADR 0021 adds a narrow durability exception for Host leases backed by a managed-device allocator.
84+ Before allocator acquisition, the daemon persists a non-authoritative allocation operation record;
85+ Host adds its asserted principal, Host lease id, and run/client attribution. After grant, it records
86+ the allocator outcome and Host-to-managed-device lease mapping before publishing the Host grant.
87+
88+ This record tracks Host publication and cleanup; it never mirrors allocator lifecycle state or
89+ becomes a second source of device truth. It exists to reconcile an uncertain allocator outcome and
90+ prevent duplicate or unattributed local ownership. It does not make the ordinary ` LeaseRegistry ` ,
91+ proxy leases, or human-control holds durable. Rehydration requires the same authorized Host user
92+ and revalidates the allocator lease before device operations resume.
0 commit comments