Implementing D* Lite for Path-Planning - How detect Edge Cost Change?
In real-world code, you almost never have to "scan the graph for changes."  Your graph only changes when you change it in the code, so you already know exactly when and where it can change!

One common way of implementing this is to have a OnGraphChanged callback in your Graph class, which can be setup to call the OnGraphChanged method in your PathFinder class.  Then anywhere the graph changes in your Graph class, make sure the OnGraphChanged callback is called.