Why I like sqlite
There is probably a better way, but this one is easy to remember. After cleaning things up, the whole thing runs noticeably faster.
Next time I will start with the boring solution and see if it is enough. I keep relearning this, which is exactly why it goes here.
The fix turned out to be one line, after an hour of looking in the wrong place. Writing a tiny test first made the problem obvious.
The documentation was correct, I just did not read it carefully. I wish someone had told me this when I started. It is worth writing down the commands you only need twice a year.
I ran into this again last week, so here is a short note for future me. Most of the time the simplest tool is good enough. Measuring before changing anything saved me from a pointless rewrite. Naming things clearly helped more than any clever trick.