Figures I would finally track it down right after posting!
I had tried to clean up the tags/categories folders using a tip I had read somewhere to overwrite the tag/category taxonomies with empty strings (null seemed to work too): Turning off taxonomy pages
So I had this in my config.json:
"taxonomies": {
"tag": null,
"category": null
}
which did get rid of the extra folders, but apparently led to the problem.
The current documentation at https://gohugo.io/content-management/taxonomies/#example-removing-default-taxonomies, however, tells a different story than the empty string. Based on that, here is what gets rid of the default tags/categories but also doesn’t cause hugo to go quietly bonkers:
"taxonomies": {}