Was thinking about infinite scroll this evening... I think to really implement that properly, we need user-local consecutive message IDs, otherwise it's really difficult to answer the "runway offset => visible messages" question in general. (And generality is needed to decouple scroll position from everything else. Not possible to actually answer, but we can approximate in the cases we can't answer accurately and it'll be fine.)
Was thinking about infinite scroll this evening... I think to really implement that properly, we need user-local consecutive message IDs, otherwise it's really difficult to answer the "runway offset => visible messages" question in general. (And generality is needed to decouple scroll position from everything else. Not possible to actually answer, but we can approximate in the cases we can't answer accurately and it'll be fine.)