Hypergraphs are awesome, and I wish they got more attention. They actually make intuitive sense in contexts like circuits and other hardware design problems. However, the last time I checked, all the Python and Rust Hypergraph libraries did not have support for directed edges (or it wasn't documented very well).
The "tersest route" problem seems to be interesting as I have never come across this before. It seems almost like a packing or covering problem.