feat(v1.1.0): validação de base de dados SQLite

- Verificação de integridade ao conectar (PRAGMA integrity_check)
- Validação de esquema completo (4 tabelas, todas as colunas)
- Migração automática de colunas em falta
- Tabela translation_backups para guardar originais antes de traduzir
- CLI --verify-db e --restore-backup
- WAL mode para melhor concorrência

Tarefa #419, Discussão #33, Projecto #65
This commit is contained in:
2026-03-12 14:43:09 +00:00
parent 6ac6f4be2a
commit 44e2250eb7
2 changed files with 266 additions and 5 deletions

View File

@@ -1,5 +1,28 @@
# Changelog — wp-translate-ptpt.py
## [1.1.0] - 2026-03-12
### Added
- Validação de base de dados: verificação de integridade SQLite (PRAGMA integrity_check) ao conectar
- Validação de esquema: verifica que todas as tabelas e colunas esperadas existem
- Migração automática: adiciona colunas em falta sem perder dados existentes
- Tabela `translation_backups`: guarda string original antes de cada tradução/correcção
- Método `verify_health()`: diagnóstico completo da BD (integridade, tabelas, contagens)
- CLI `--verify-db`: verifica saúde da BD e reporta estado de cada tabela
- CLI `--restore-backup HASH`: consulta backups de traduções por hash msgid
- Método `backup_translation()`: regista original antes de sobrescrever
- WAL mode activado para melhor concorrência em SQLite
- Tratamento de erros de BD no arranque do TranslationProcessor com mensagem de sugestão
### Changed
- CacheManager agora valida esquema completo após _init_db (4 tabelas, todas as colunas)
- TranslationProcessor verifica saúde da BD antes de iniciar processamento
- _process_entry guarda backup da string original antes de aplicar correcções de marcas e PT-BR
- Criação do processor envolvida em try/except com mensagem orientativa
### Fixed
- BDs existentes de v1.0.0 são migradas automaticamente (nova tabela translation_backups adicionada)
## [1.0.0] - 2026-02-23
### Added