mirror of
https://github.com/pyMC-dev/pyMC_Repeater.git
synced 2026-11-05 21:02:25 +01:00
With the contact book full and overwrite-oldest on, a new advert evicts the oldest contact in memory and _persist_contact upserts the newcomer to SQLite, but the evicted row is never deleted. The stored count grows by one per eviction until the next full save. If the daemon exits without one (a crash, a kill, or a shutdown step that times out), the companion then refuses to start because its stored contacts exceed max_contacts. Delete the evicted contact's row when contact_deleted fires, next to the single-row upsert.