SQLite Forum

Removing not null constraint doesn't behave correctly
I add this in case it helps localize the code issue.

Version 3.32.2 of the SQLite shell demonstrates the OP's misbehavior AND allows a second <code>ALTER TABLE NAMES ADD Age INTEGER DEFAULT 10;</code> to succeed (with or without explicit transaction bracketing.)

(To the OP) Stating the version you used to demonstrate the issue would also help.