Files
SoftIA Backup Agent 3464e813d4 Merge feat/i18n-espanhol (#375) em feat/i18n-es-agenda
Traz o #375 para dentro ANTES de ele mergear, para que o mantenedor não
receba um conflito. Merge e não rebase, pela doutrina de higiene de branches
do próprio repo: `main` nunca é reescrita, e a atualização entra pelos dois
lados preservados.

Oito conflitos, resolvidos com uma regra: ONDE OS DOIS ENVOLVERAM A MESMA
STRING, GANHA A CHAVE DELES. As deles já passaram pela verificação byte a byte
contra o português; as minhas não foram revisadas por ninguém. Eu só somo onde
eles não têm nada.

- `IdiomaProvider` — inteiro deles. Eles também criaram `useIdioma()`, com um
  contexto mais rico (`{ idioma, aplicar }`) que o seletor do topo precisa. O
  meu era redundante; `lib/i18n/locale-de-data.ts` consome o deles sem mudança.
- `CartaoDaConexaoGoogle`, `PainelDeMarcacao` — as chaves coincidiram; fiquei
  com a formatação deles para reduzir o diff. Duas diferenças REAIS somadas:
  `t("exatamente assim")` e `t(tipo)`, que eles não envolvem.
- `PainelDeMarcacao`, `HistoricoDaAgenda`, `_client`, `settings/tenant/agenda`,
  `estados` — minhas, onde é acréscimo puro que não toca o português:
  `localeDeData` no lugar de `ptBR`, e os rótulos que faltavam.
- `dicionario.ts` — as duas listas, deduplicadas: 48 chaves minhas descartadas
  por já existirem do lado deles.

O gate `i18n-espanhol-cobre-a-tela` reprovou 9 chamadas minhas e a régra dele é
melhor que a minha convenção: ele exige entrada em espanhol para TODA chave,
inclusive quando a tradução é a própria chave. Sem a linha, "igual porque assim
se diz" fica indistinguível de "esqueci". As 9 entraram declaradas.

Import duplicado de `useT` em 7 arquivos (os dois lados o adicionaram, e o
auto-merge guardou os dois) — deduplicado.

⚠️ NÃO MEXI numa entrada deles que destoa: o estado vazio da Agenda diz "Los
agendamientos" enquanto o resto do dicionário diz "cita" (11 ocorrências contra
1, e a própria `main` já dizia "Tipos de cita"). É linha deles; trocá-la é
decisão de quem a escreveu. Vai anotada no PR.

gov:verify verde COM o gate novo: typecheck, lint 0 erros, lint-channels ok,
568 arquivos / 6333 testes. Dicionário 3.679 chaves, 0 duplicadas. E o barrido
que compara cada literal envolvido contra a versão anterior — o mesmo que
reproduziu as 3 regressões apontadas no #352 — dá 0 suspeitos neste delta.
2026-08-27 20:52:45 -06:00
..