teqo-backup/tests/unit
Francisco Ignácio Fontoura Solla 2c30944593 B8+: escala das malhas em unidades reais, contrato do map key e degradacao
F1 — a tolerancia de simplificacao e os digitos de quantizacao viraram
politica em unidades de solo em scripts/lib/topology.mjs, consumida pelos
dois scripts de geometria. Os quantis 0.35 copiados cortavam as 19 ZE de
Salvador a ~0.6 m2 e os 417 municipios a ~1.78 km2; com tolerancia
absoluta e a grade de ~103 m do estado, a malha das zonas caiu de 480 para
30.2 pontos/feature. bahia-municipalities segue byte-identico e o tripwire
de bytes deu lugar a pontos/feature.

F2 — featureMapKey passou a ser asserido sobre features reais das tres
malhas comprometidas (417 codarea, 27 code, 19 slug), e o comentario de
MAP_KEY_PROPERTIES agora diz o que o codigo faz: as propriedades sao
mutuamente exclusivas, nao ordenadas por especificidade.

F3 — a malha das zonas e um detalhe sobre o mapa, nao o mapa: se o chunk
falha, Salvador cai no poligono municipal que ja esta desenhado embaixo e
o resto da Bahia continua funcionando, com o motivo logado. A ressalva de
aproximacao saiu do gate de comparacao e passou a depender de
bundle.hasZoneMunicipalities, derivado no servidor de municipality.kind.

F4 — orfaos deletados: os dois acessores sem chamador, isZoneMapKey (o
servidor ja sabe a regra), o wrapper simplifyTopology e o helper
polygonCount com um branch inalcancavel. MunicipalityMapNavigation
colapsou em string | undefined e MunicipalitiesByMapKey em
Record<string, string>.
2026-07-27 01:59:36 -03:00
..
activityUi.unit.spec.ts C13: renomeia "Plano de Acao" para "Atividade" em toda a vertical /campanha 2026-07-25 20:50:38 -03:00
advisorMunicipalityPortfolio.unit.spec.ts Tooling: prettier como autoridade de formatacao (organize-imports deterministico, scripts format/format:check, normalizacao mecanica de 312 arquivos; artefatos gerados e migrations excluidos via .prettierignore) 2026-07-25 17:22:20 -03:00
advisorSchema.unit.spec.ts B19: Gerenciar assessores (/campanha/assessores) 2026-07-25 02:40:47 -03:00
bahiaElectionAggregates.unit.spec.ts B13: escala relativa no mapa dos Municipios (quantis/LQ/posicao) + artefato TSE v3 2026-07-26 04:22:56 -03:00
bahiaMapStyle.unit.spec.ts B8+: escala das malhas em unidades reais, contrato do map key e degradacao 2026-07-27 01:59:36 -03:00
campaignActionContext.unit.spec.ts B19: Gerenciar assessores (/campanha/assessores) 2026-07-25 02:40:47 -03:00
campaignAuthMemoization.unit.spec.ts Ship /campanha nuclei MVP with RBAC, invites, and vote estimates. 2026-07-18 15:01:56 -03:00
campaignComponents.unit.spec.ts B25: link do território na lista de municípios 2026-07-26 18:59:49 -03:00
campaignCompositionCleanup.unit.spec.ts C13: renomeia "Plano de Acao" para "Atividade" em toda a vertical /campanha 2026-07-25 20:50:38 -03:00
campaignConsent.unit.spec.ts Tooling: prettier como autoridade de formatacao (organize-imports deterministico, scripts format/format:check, normalizacao mecanica de 312 arquivos; artefatos gerados e migrations excluidos via .prettierignore) 2026-07-25 17:22:20 -03:00
campaignEntityListParsers.unit.spec.ts B33: ordenação e filtro no header da lista de dobradinhas 2026-07-26 16:21:40 -03:00
campaignFormActions.unit.spec.ts Pass 2 W4d: runCampaignFormAction (stay-on-page) fecha o C8 F4 2026-07-25 15:33:19 -03:00
campaignGeolocation.unit.spec.ts B14: municipio mais proximo (atalho geo no Inicio staff) 2026-07-26 17:33:33 -03:00
campaignIntelligenceConcepts.unit.spec.ts B22: explicacao por coluna no header das listas — description em CampaignTableHead/MunicipalitySortableHead, campaignConceptOneLiner como fonte unica E18, municipalityColumnDescriptions cobrindo as 11 colunas de /campanha/municipios 2026-07-26 02:58:54 -03:00
campaignInviteArchitecture.unit.spec.ts Tooling: prettier como autoridade de formatacao (organize-imports deterministico, scripts format/format:check, normalizacao mecanica de 312 arquivos; artefatos gerados e migrations excluidos via .prettierignore) 2026-07-25 17:22:20 -03:00
campaignInviteInteractions.unit.spec.ts B30: convite WhatsApp na lista de lideranças 2026-07-26 20:47:11 -03:00
campaignInviteOrigin.unit.spec.ts Tooling: prettier como autoridade de formatacao (organize-imports deterministico, scripts format/format:check, normalizacao mecanica de 312 arquivos; artefatos gerados e migrations excluidos via .prettierignore) 2026-07-25 17:22:20 -03:00
campaignListUrl.unit.spec.ts C13: renomeia "Plano de Acao" para "Atividade" em toda a vertical /campanha 2026-07-25 20:50:38 -03:00
campaignLoginAction.unit.spec.ts Show a distinct message when campaign login is temporarily locked. 2026-07-20 18:24:19 -03:00
campaignMigrationSafety.unit.spec.ts Tooling: prettier como autoridade de formatacao (organize-imports deterministico, scripts format/format:check, normalizacao mecanica de 312 arquivos; artefatos gerados e migrations excluidos via .prettierignore) 2026-07-25 17:22:20 -03:00
campaignPasswordSchemas.unit.spec.ts Add campaign password reset, profile photo, and RS+ follow-up plan. 2026-07-19 05:26:56 -03:00
campaignPwa.unit.spec.ts Add installable PWA foundation for the /campanha field app. 2026-07-18 17:28:34 -03:00
campaignSearchInput.unit.spec.ts Pass 2 W2: components/campaign em subpastas por dominio 2026-07-25 14:52:17 -03:00
campaignTable.unit.spec.ts B22: explicacao por coluna no header das listas — description em CampaignTableHead/MunicipalitySortableHead, campaignConceptOneLiner como fonte unica E18, municipalityColumnDescriptions cobrindo as 11 colunas de /campanha/municipios 2026-07-26 02:58:54 -03:00
campaignUserProfile.unit.spec.ts Add the tooling gate: knip, CI, zero-warning lint, as-never ban 2026-07-23 23:06:12 -03:00
campoParties.unit.spec.ts E8: Conta da cadeira (metas derivadas, potencial por município, cobertura) 2026-07-24 22:54:27 -03:00
choroplethPercentScale.unit.spec.ts Tooling: prettier como autoridade de formatacao (organize-imports deterministico, scripts format/format:check, normalizacao mecanica de 312 arquivos; artefatos gerados e migrations excluidos via .prettierignore) 2026-07-25 17:22:20 -03:00
codebaseConventions.unit.spec.ts C13 pos-simplify: fecha os residuos da varredura e estreita os guards 2026-07-25 21:29:32 -03:00
contactCityMigration.unit.spec.ts Tooling: prettier como autoridade de formatacao (organize-imports deterministico, scripts format/format:check, normalizacao mecanica de 312 arquivos; artefatos gerados e migrations excluidos via .prettierignore) 2026-07-25 17:22:20 -03:00
dashboardPriorityMunicipalities.unit.spec.ts B20: municípios prioritários no Início com déficit E9 e CTA para a lista. 2026-07-25 20:01:51 -03:00
electionPartySpectrum.unit.spec.ts Pass 2 W4a: electionInsights.ts deletado (941 linhas, 71 exports, 2 vivos) 2026-07-25 14:57:49 -03:00
electionResults.unit.spec.ts Tooling: prettier como autoridade de formatacao (organize-imports deterministico, scripts format/format:check, normalizacao mecanica de 312 arquivos; artefatos gerados e migrations excluidos via .prettierignore) 2026-07-25 17:22:20 -03:00
facebookPixel.unit.spec.ts Add Meta Pixel tracking to public petition pages. 2026-07-21 10:51:47 -03:00
formatRelativeAge.unit.spec.ts Polish /campanha Field Desk UX and register FD+/FD2 follow-ups. 2026-07-19 08:17:12 -03:00
goalCoverage.unit.spec.ts Pass 2 W2: correcoes de fronteira lib/utilities e client boundary 2026-07-25 14:38:41 -03:00
leadershipStateDeputyMembership.unit.spec.ts B31: coluna de dobradinhas na lista de lideranças 2026-07-26 19:50:15 -03:00
mapScaleClasses.unit.spec.ts simplify(B13): corrige classe agregada, bolhas em pane proprio e registra debitos 2026-07-26 05:12:37 -03:00
municipalityAdvisorMembership.unit.spec.ts B27: combobox + chips + auto-save no popover de Assessores da lista de municípios 2026-07-26 03:31:51 -03:00
municipalityGeographyParts.unit.spec.ts B25: link do território na lista de municípios 2026-07-26 18:59:49 -03:00
municipalityList.unit.spec.ts E10: classificacao territorial relativa (Reduto/Expansao/Manutencao/Marginal/Sem base) sobre o artefato TSE, com coluna+sort+filtro na lista, badge no card da conta da cadeira e na capa do dossie; seam generico cellTooltip na CampaignTable e promocao do CampaignHoverTooltip para shared 2026-07-25 21:59:20 -03:00
municipalityMapNavigation.unit.spec.ts B8+: escala das malhas em unidades reais, contrato do map key e degradacao 2026-07-27 01:59:36 -03:00
municipalityPotential.unit.spec.ts Tooling: prettier como autoridade de formatacao (organize-imports deterministico, scripts format/format:check, normalizacao mecanica de 312 arquivos; artefatos gerados e migrations excluidos via .prettierignore) 2026-07-25 17:22:20 -03:00
municipalityProximity.unit.spec.ts simplify(B14): corrige o mecanismo da fronteira, estado unsupported e duplicatas 2026-07-26 18:03:44 -03:00
municipalityStaffVoteTotal.unit.spec.ts Tooling: prettier como autoridade de formatacao (organize-imports deterministico, scripts format/format:check, normalizacao mecanica de 312 arquivos; artefatos gerados e migrations excluidos via .prettierignore) 2026-07-25 17:22:20 -03:00
municipalityTerritorialClass.unit.spec.ts simplify(B13): corrige classe agregada, bolhas em pane proprio e registra debitos 2026-07-26 05:12:37 -03:00
municipalityVoteRank.unit.spec.ts simplify(B13): corrige classe agregada, bolhas em pane proprio e registra debitos 2026-07-26 05:12:37 -03:00
onda0ConsentTexts.unit.spec.ts Add pre-push typecheck hook and fix campaign avatar field access. 2026-07-19 12:10:59 -03:00
payloadAdminRoles.unit.spec.ts Add users.roles so Payload /admin can separate editors from admins. 2026-07-27 01:54:29 -03:00
projectionSheetParse.unit.spec.ts Tooling: prettier como autoridade de formatacao (organize-imports deterministico, scripts format/format:check, normalizacao mecanica de 312 arquivos; artefatos gerados e migrations excluidos via .prettierignore) 2026-07-25 17:22:20 -03:00
recentVisits.unit.spec.ts C13 pos-simplify: fecha os residuos da varredura e estreita os guards 2026-07-25 21:29:32 -03:00
revalidateRequest.unit.spec.ts Add allowlisted global cache revalidation for Onda 0 F1. 2026-07-19 22:21:16 -03:00
signatureExport.unit.spec.ts Add admin CSV export for signatures and contacts. 2026-07-23 00:53:04 -03:00
stateDeputyListUrl.unit.spec.ts B33: ordenação e filtro no header da lista de dobradinhas 2026-07-26 16:21:40 -03:00
supporterSchema.unit.spec.ts Add C6 scale/DRY for supporters: bulk import, KPI aggregate, shared shells. 2026-07-18 22:17:31 -03:00
supporterUi.unit.spec.ts Pass 2 W0: pina contratos de URL e loaders das listas + truth-up TESTING/TECH-DEBT 2026-07-25 13:30:39 -03:00
territoryAnchor.unit.spec.ts B25: link do território na lista de municípios 2026-07-26 18:59:49 -03:00
territoryListUrl.unit.spec.ts B21: cria página própria dos territórios 2026-07-25 21:50:24 -03:00
territoryOverview.unit.spec.ts E12: camada TI com rollups MAUP e benchmark intra-TI. 2026-07-26 21:26:47 -03:00
voteEstimate.unit.spec.ts Tooling: prettier como autoridade de formatacao (organize-imports deterministico, scripts format/format:check, normalizacao mecanica de 312 arquivos; artefatos gerados e migrations excluidos via .prettierignore) 2026-07-25 17:22:20 -03:00
voteTrend.unit.spec.ts Pass 2 W4a: electionInsights.ts deletado (941 linhas, 71 exports, 2 vivos) 2026-07-25 14:57:49 -03:00