I'd think this is super common but no matter how I search I cannot find anyone else even asking this question.
I'm finding that the longtable package is keeping the last row with the rest of the table, rather than inserting a page break, depending on where the table is allowed to start in the page.
In this MWE, it keeps the 'final step' row with the rest of the table, resulting in
Overfull \vbox (8.2999pt too high) has occurred while \output is active
\documentclass[12pt,letterpaper,notitlepage,oneside]{article}
\usepackage{array}
\usepackage{longtable}
\begin{document}
\rule{2pt}{457pt}%Takes up enough space for this problem to come up
\begin{longtable}{| m{5cm} |}
\hline\endfirsthead
\hline\endhead
\hline\endfoot
\hline\endlastfoot
step 1\\
step 2\\
step 3\\
step 4\\
step 5\\
final step\\
\end{longtable}
\end{document}
The \rule before the longtable is just a placeholder, representing stuff (text, other tables, etc.) that take up enough space before a longtable for the problem to happen. It's just a small 'sweet spot' of space before a longtable that can result in the issue.
I'd be very grateful if anyone can recommend a way I can automatically prevent this. I understand I can manually put in a \pagebreak command at the end of the 'step 5' row, but part of the point of using the longtable package is to avoid having to manually break up my tables.