Problem
Same bug class as the fixed insert() (PR #970), but in two more methods:
crud.rs:243 — update() does UPDATE memories then DELETE/INSERT tags without transaction
crud.rs:295 — update_fields() same pattern
If tag insert fails after memory UPDATE, tags are left in inconsistent state (deleted but not re-inserted).
Fix
Wrap both methods in unchecked_transaction() — same pattern as the fixed insert().
Severity: MAJOR (data integrity)
Problem
Same bug class as the fixed
insert()(PR #970), but in two more methods:crud.rs:243—update()does UPDATE memories then DELETE/INSERT tags without transactioncrud.rs:295—update_fields()same patternIf tag insert fails after memory UPDATE, tags are left in inconsistent state (deleted but not re-inserted).
Fix
Wrap both methods in
unchecked_transaction()— same pattern as the fixedinsert().Severity: MAJOR (data integrity)