NOT NULL and has no DEFAULT, the insert has nothing to put in it and MySQL rejects the row:
ALTER TABLE ... ADD COLUMN fills existing rows with an implicit default such as 0 or ''. The copy uses INSERT statements under strict SQL mode instead, so there is no implicit default to fall back on.
This also happens when a column is renamed. PlanetScale treats a rename as dropping the old column and adding a new one, so the new column has no values to copy. See Handling table and column renames.
How to fix it
Change the column definition on your branch so existing rows have a value to copy:NULL, backfill the column after the deploy, then make it NOT NULL in a later deploy request.

