pub fn hash_graph(graph: &Graph) -> [u8; 32]
Hash an entire graph for integrity verification. BTreeMap iteration gives deterministic key order.