pub fn sync_fts_after_update(
conn: &Connection,
memory_id: i64,
old_name: &str,
old_desc: &str,
old_body: &str,
new_name: &str,
new_desc: &str,
new_body: &str,
) -> Result<(), AppError>Expand description
Syncs FTS5 external-content index after an UPDATE on the memories table.
The AFTER UPDATE trigger (trg_fts_au) is intentionally absent because
sqlite-vec loaded via sqlite3_auto_extension conflicts with FTS5 inside
UPDATE triggers. This function performs the equivalent sync in Rust:
DELETE the old entry, then INSERT the new one (external-content FTS5
tables do not support in-place UPDATE).