One of the things I really like about digikam is the matching of the disk layout with the album structure. This makes it really easy to have other programs also interact with my photo library in a way that’s near impossible if you instead have an internal photo database.
Tags work great for me for multi-categorization. What feels clunky about them in your workflow? You’re even allowed to have a tag hierarchy.
I actually do event level as my on-disk sorting. And then tag for stuff that’s not that. But I think it would work pretty well to do the event sorting under tags as well.
Then I rate my favorite photos, usually using the green approved, not stars. But stars would work too. Then if you want to find say, favorite landscapes, the digikam interface makes it really easy to do so.
I’m not sure if you can select what tags get written into the image, but if you can, you might be able to exclude certain parts of the hierarchy, and only include content/ or type/ subhierarchies