bbolt batch was trying to finish commit, needed all txes to finish
heartbeat update in read tx was waiting for concurrent status map so it could update
heartbeat status map was locked iterating waiting to submit to batch
(now we're back at the beginning)
Was also a view tx within a view tx, which can be problematic
- as updates to API Sessions can now happen later than the last time
they were active, updatedAt is no longer the correct representation of
the last activity an API Session had
- move all logic that used updatedAt to lastActivityAt
- add migration to set lastActivityAt