Why am I getting a 404 on anything past page 1 of my query?

So, it turns out my hunch was correct and the solution is to add some rewrite rules. Here’s what I added:

function owr_blog_rewrite( $rules ) {
    return [
        'notes/topic/([^/]+)/?$' => 'topic=$matches[1]',
        'notes/topic/([^/]+)/page/([0-9]+)/?$' => 'topic=$matches[1]&paged=$matches[2]',
    ] + $rules;
}
add_filter( 'rewrite_rules_array', 'owr_blog_rewrite' );  

Everything works as expected now