mirror of
https://github.com/fsolla/teqo.git
synced 2026-11-13 23:25:18 +00:00
- AGENTS.md: Known Gap #2 resolvido (D3), arvore de estrutura (+AllocationDecision, PrivacyPolicy, CampaignGoals; components por dominio), URLs novas (/campanha/assessores|conceitos|perfil), entrada 'Recently resolved' do Pass 2 - tracker: todos os workstreams done; secao de achados de drift de docs de produto (PRODUCT/DESIGN/CUSTOMER - reportados, nao aplicados) - TESTING.md: 46/48/7 + linhas do safety net (formActions wrapper, voteTrend, submitWhatsapp) - TECH-DEBT: smells fechados (municipalityUi split, detail RSCs, formActions, components subpastas, electionInsights) - planos: status entregue nos 5 do Pass 2; escala-dry-pos-b16 absorvido; C8 F3/F4 fechados em escala-dry-pos-c6; notas de costura em B17/B18/cenario-junto; nota de conflito E4R em mapa-projecao - roadmap: entrada Pass 2 no 'Ja entregue', B17/B18 marcados como triviais, B16+ riscado, header atualizado - notebook do projeto: entrada Pass 2 - DESIGN.md: secao do sistema de listas (unico drift aplicado, conforme plano)
26 lines
2.1 KiB
Markdown
26 lines
2.1 KiB
Markdown
# Split de electionInsights.ts (Pass 2 — W4a)
|
|
|
|
Status: **entregue** (Pass 2, 2026-07-25) — decisão D2 assinada: DELETAR os clusters mortos
|
|
Atualizado em: 2026-07-25
|
|
Item pai: [IMPROVE-CODE-QUALITY-PLAN.md](../IMPROVE-CODE-QUALITY-PLAN.md) — Pass 2, W4a
|
|
Appetite: ~0,5 dia; precisa terminar antes de E10 começar (~16/08)
|
|
|
|
## Contexto
|
|
|
|
`src/lib/electionInsights.ts`: 941 linhas, 71 exports, **2 usados em produção** — `formatElectionNumber` (13 importers) e `computeVoteTrend` (+ tipos, 1 importer: `MunicipalityBaselineCard`). O resto é a matemática de insights da era núcleos (A4: gap vs 2022, limiares 35/20/10, rankings por núcleo) cuja UI morreu no remodel de municípios; os testes que restam testam código sem consumidor.
|
|
|
|
## Decisão (D2, assinada 2026-07-25)
|
|
|
|
**Deletar** os ~52 exports sem consumidor + seus testes, com ponteiro para E10 no commit e neste plano. Rejeitado: módulo-quarentena (`electionInsightsLegacy.ts`) — manter matemática morta convida reuso acidental da abordagem de limiares absolutos que E10 explicitamente substitui por classificação relativa (quantis/LQ — ver `docs/research/` e [classificacao-territorial-relativa.md](classificacao-territorial-relativa.md)). As fórmulas ficam no git history e nos planos.
|
|
|
|
## Escopo
|
|
|
|
1. Extrair `formatElectionNumber` (+ helpers de formatação vivos) para `src/lib/electionFormat.ts`; atualizar os 13 importers.
|
|
2. Manter o cluster `computeVoteTrend` (tipos + função) — em `electionFormat.ts` ou módulo próprio pequeno, o que a costura natural pedir.
|
|
3. Deletar `electionInsights.ts` restante + specs correspondentes; knip limpo.
|
|
4. Marcar em [classificacao-territorial-relativa.md](classificacao-territorial-relativa.md) que a premissa "editar electionInsights in place" foi superada — E10 nasce em módulo novo.
|
|
|
|
## Impacto no roadmap
|
|
|
|
- **E10** (classificação relativa): parte de terreno limpo em vez de herdar 900 linhas de abordagem rejeitada. Precisa desta entrega antes de começar (~16/08).
|
|
- Derruba o maior ofensor do knip `exports` (25 findings) — pré-requisito prático de W4b (warn→error).
|