Sembra che tu stia utilizzando zodb Transaction Manager in Pyramid.
Devi contrassegnare la sessione come modificata
Dovresti fare qualcosa come
from zope.sqlalchemy import mark_changed
mark_changed(Session)
se non funziona prova
from zope.sqlalchemy import ZopeTransactionExtension
Session.configure(extension=ZopeTransactionExtension('changed'))