2.3 KiB
2026-08-25 — react-audit run: primeira varredura das 9 famílias, 6 fixes
Primeira run da skill react-audit (âncora de delta = repo inteiro; sem entrada anterior em
docs/changelog/). Sweep read-only por Tasks ad-hoc sobre as 9 famílias do catálogo fixo
(.agents/skills/react-audit/anti-patterns.md): 46 candidatos → triage com os três selos
(file:line conferido + família + fonte oficial) e dedup contra docs/TECH-DEBT.md (P4-G,
P5-D, P5-E, P6-K, P6-T, P6-V, row 25 etc. pulados). Cap de 6 fixes respeitado.
Branch agent/react-audit-2026-08-25, um commit por fix, gate completo bare verde por fix
(tsc/lint/format/knip/cycles/test/build), PR único ready SEM auto-merge (relatório
consolidado no body):
- F4 (C140 leftover) — dispatch manual preserva texto digitado em erro de validação:
ActivityUpdateForm.tsx,ActivityResultForm.tsx,DemandWorkflowCard.tsx(transição + custo),MunicipalityUpdateDeliberation.tsx(CommentThread). C140 (#740) fechou 2026-08-23; estes 4 escaparam. Receita do precedente C139 (ContactCreateRow.tsx:63-69). - F2 —
PetitionFormrecebe view model mínimo (id/title/form.title/form.subtitle) em vez do docPetitioninteiro (richText/consent/tracking ficam no server);import typeno lugar do valor depayload-types. - F5 —
Media.tsganhaafterChange+afterDelete→revalidateDocumentById('media'); o cache cross-request degetCachedDocumentById('media')(5 leituras públicas) nunca era invalidado. Sem migração (hooks não são schema). - F7 —
GoogleCalendarSyncDialog.tsxanuncia falha assíncrona (role="alert"nos erros de "Sincronizar agora"/"Reativar"). - F1+F6 (B14) — 4 sortable heads puros deixam de ser client e param de levar os
serializadores
*ListUrlao bundle (contatos/pessoas/lideranças/dobradinhas). - F3 —
CampaignNotificationBell: sync de prop no render com guarda deopen(prev-prop pattern) substitui o effect que podia ressuscitar o badge zerado.
Rejeitado com verificação: priority nas 4 imagens do hero (CampaignHero.tsx) — priority é
só para o LCP real, que já tem. Follow-ups registrados como Issues #915/#916/#917.
Nota honesta: 3 flakes calendar (#906) numa run de pnpm test, verdes isoladas.