Do you mean also changing the code to only set the flag when the deps are not valid (move edge->xxx_invalid_ = true from RecomputeOutputsDirty to RecomputeOutputDirty after 'EXPLAIN("%soutput %s...')?