Store one node table keyed by the 16-hex digest prefix of each node's canonical subgraph instead of per-root graphs with numeric indices, so a type change rewrites only the changed nodes and their ancestors. Refs #6597