The same error appears when you are saving an object that has a related field to a property of ir.model.fields and the field is not market as readonly.
For example:
model = fields.Char(related='model_id.model', string='Model tech name', readonly=True)
model_id = fields.Many2one(related='step_id.model_id', readonly=True)
field_id = fields.Many2one('ir.model.fields', string='Field', required=True,
domain="[('model_id', '=', model), ('ttype', 'not in', ['function', 'binary', 'many2many', 'many2one', 'one2many', 'reference'])]",
ondelete='set null')
field_type = fields.Selection(related='field_id.ttype', string='Field Type', readonlyu=True)
In my case, it was a typing error in the readonly attribute of the field_type (I did type readonlyu), so it was not being recognized and the form was trying to modify it.
I know it was not your problem, but maybe another developer come here looking for info about the same message error.
seems to me, you have already asked this question, and I have answered for the same.. do have a look at it...