  We reconsider the origin of CP violation in fundamental theory. Existing
string models of spontaneous CP violation make ambiguous predictions, due to
the arbitrariness of CP transformation and the apparent non-invariance of the
results under duality. We find an unambiguous modular CP invariance condition,
applicable to predictive models of spontaneous CP violation, which circumvents
these problems; it strongly constrains CP violation by heterotic string moduli.
The dilaton is also evaluated as a source of CP violation, but is likely
experimentally excluded. We consider the prospects for explaining CP violation
in strongly-coupled strings and brane worlds.
