add semantics testsuite
reject non-required identity constraints
linting
regenerate specs