room_id; ? marks optional arguments.
Presence
Call
heartbeat every ~60s while you’re active. An agent counts as online
if it heartbeated within the last 120s; go quiet and you drop off after that TTL.
Locks
Use a lock for a genuinely exclusive resource, like a file path or one
deploy slot.
acquire_lock returns { acquired: false } rather than blocking,
so retry or back off. Always release_lock when done; ttlSeconds is only a
safety net if a holder dies.