Do not allow avoid break-before/previous-break-after to produce infinite looping.
I've encountered at least one situation that does not progress in rendering where the "prev" branch in layout.js findOverflow causes rendering to get stuck and loop without progressing.
In my cases I think this is due to problems in table rendering, but no matter what the root cause, loops are a big usability problem.
Its pretty easy to avoid this by storing the range startContainer in the breakToken, passing the old breakToken into findOverflow and, in the "prev" branch, checking if the "prev" is the same as the old breakToken stored startContainer.
At this point I might have a poor MR soon as it is full of console.log statements as I'm trying to solve my main table rendering problems. I expect to be able to provide a cleaned up MR in a few days.