Currently the class DirectedAcyclicGraph is broken. All collections (nodes, roots, leafs) are wrong, the latter even contain objects that are not nodes in the graph.
From the code, it is unclear to me where the node/leaf sets are computed. These bugs have numerous downstream implications, as it creates hard-to-track bugs in downstream path calculations (which do not expect to encounter roots that are not even nodes in the network).
This needs a fix asap.
Currently the class
DirectedAcyclicGraphis broken. All collections (nodes, roots, leafs) are wrong, the latter even contain objects that are not nodes in the graph.From the code, it is unclear to me where the node/leaf sets are computed. These bugs have numerous downstream implications, as it creates hard-to-track bugs in downstream path calculations (which do not expect to encounter roots that are not even nodes in the network).
This needs a fix asap.