This question possibly relates to the 9938 too, but I'm endeavouring to start at the begging and work my knowledge up.
Per my understanding of http://map.grauw.nl/articles/vdp-vram-timing/vdp-timing-2.html in graphics mode 2 two things occur for display of sprites: during the course of line n, sprite y position fetches are (mostly) interleaved with colour, pattern and name fetches. From that the visible four are picked. Full details of those four are fetched during the right and left borders, and they appear on line n+1.
Follow-up questions:
- what's the rule for sprites on line 0? Does the VDP have an undepicted memory access pattern for the line one before the display, does it do the equivalent of a full character fetch but throw the non-sprite data away? Does it carry over information from the last line 191? Does it not draw sprites at all?
- similarly, what happens if I switch mode mid-display, or decide to switch the screen on when it's previously been off? No sprite output for the first line? Nonsense sprite output for that line (e.g. third and fourth sprite data is still fetched from somewhere and displayed depending on historic state, but the first and second sprites are definitely all shifted out, so invisible)?
I've read elsewhere that mode and display on/off changes don't take effect until the end of the line, and have assumed that to mean during sync. If it's before the right border then obviously the nonsense sprite output comment would be different.

The blanking bit takes effect somewhere at the start of a line. Probably the blanking state is copied from that bit at the transition of the left border into the active display area. Though it could be a bit earlier as well, it’s hard to say precisely.
).