Migração v1.9.9¶
O schema passa exatamente de 5 para 6. python scripts/migrate_v199.py é dry-run por padrão;
--apply cria backup checksummed antes de abrir a transação; --verify confirma schema, tabelas,
integridade e registro da migration. O backfill preserva rejected/stale e deriva somente os
estados compatíveis de entradas antigas.
python scripts/migrate_v199.py
python scripts/migrate_v199.py --apply
python scripts/migrate_v199.py --verify
Apply e rollback de release usam cópia/fixture sintética. O primeiro start não migra dado pessoal silenciosamente; JSON/JSONL legado não é apagado. Falha deixa o banco anterior recuperável pelo backup e corrupção de JSON é movida para quarantine com diagnóstico, nunca convertida em lista vazia.