(Made up numbers, but relative orders of magnitude matter)
I’m imagining:
* When we read/write a blob, give it a lease of at least 2 hours
* Every 30 minutes, walk the whole graph and extend leases for anything currently in the graph by another 2 hours
* Every 10 hours, trigger a GC