resolveFork().
Fix — implement resolveFork(canonicalBlocks) on the target. It must remove rows above the fork
point and return the cursor to resume from. A target that commits only finalized data should instead
set requiresFinalizedStream: true, which puts it on a stream no fork can reach.