It seems that for any DAG, a hierarchy could be derived that would minimized either the number of soft-links, or a weighted score of how many contained files are in a soft-linked path.
And, similar to how a sugiyama graph automatically redraws when an edge is added or removed, a filesystem hierarchy could be automatically restructured to minimize the above scores when files are added or removed from the various folders.
> The downside of folders is trying to figure out where things belong in the hierarchy, or trying to update that hierarchy to a new standard.
That's why I stick to Documents/{folder1..folder∞} and folders don't have hierarchical sub folders, just contextual folders. Eg: Documents/taxes 2021/{invoices, stuff}, Documents/taxes 2021/, Documents/Cthulluh Roleplaying/{pdf files of characters}, Documents/Covid vaccination certificates,
Yes, it's messy but I don't have the mental burden of a holding a tree in my head or a tagging system.
The downside of tagging is you still need to establish conventions to ensure things can be found again, but enforcement of your conventions is harder.
Exploring, learning, and using an unfamiliar folder hierarchy is easier than exploring, learning, and using an unfamiliar tagging methodology.
But manually searching for something in somebody else's tagged data is easier than manually searching for something in somebody else's folders.