I think you are overthinking the way of thinking in that example a bit.
Is there a reason to spend time trying to fight attributes manually (and trying to remember which require needsUpdate
flags, which may need matrix recalculation etc.) instead of just updating the line object automatically?
With 4 points and 4 lines, I dare even say it wouldn’t matter if you created an entirely new Mesh on each frame (and disposed the last one ofc) - it should still work just fine.