000001 was modified to include public_id, version, delete_timestamp
but 000002/000003 tried to ALTER TABLE to add the same columns,
causing duplicate column errors on existing databases where
migrations had run partially.
Fix: only 000001 with the full schema. No 000002/000003.
Schema: public_id + version columns with UNIQUE constraint,
delete_timestamp for soft-delete.
Tools: store_flashcard accepts optional public_id, update_flashcard
creates a new version preserving history, delete_flashcard inserts
a tombstone row and removes the Qdrant point.
Qdrant: point ID is public_id (only latest version indexed).