Karl Rove leaked the name of an undercover CIA agent, jeopardizing US national security. He must resign or be fired, as President Bush promised.