The default value for the ID attribute of the new feature is set to NULL when splitting a feature.
This behavior is not desirable when dealing with an ID column which is filled by a sequence and NOT NULL, because that means, you have to define a value for that attribute manually when using the QGIS "Edit Feature Form".
DigitizingTools
It would be very helpful here to copy the behavior of the QGIS core "Split Features" tool, which automatically inserts the nextval() call of the sequence and therefore the attribute is NOT NULL and does not have to be changed manually.
QGIS core
A workaround is, to use the attribute table to edit the attributes, because the attribute table does not enforce the NOT NULL constraint on the QGIS GUI side like the "Edit Feature Form" does.
The default value for the ID attribute of the new feature is set to NULL when splitting a feature. This behavior is not desirable when dealing with an ID column which is filled by a sequence and NOT NULL, because that means, you have to define a value for that attribute manually when using the QGIS "Edit Feature Form".
It would be very helpful here to copy the behavior of the QGIS core "Split Features" tool, which automatically inserts the nextval() call of the sequence and therefore the attribute is NOT NULL and does not have to be changed manually.
A workaround is, to use the attribute table to edit the attributes, because the attribute table does not enforce the NOT NULL constraint on the QGIS GUI side like the "Edit Feature Form" does.
Here is the minimal example to reproduce: