[WEB] Fixear 25 errores TS preexistentes en main (MedioForm + SeccionForm + pagination + tests) #26
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Contexto
Descubierto durante smoke E2E de UDT-011 (PR #25).
npm run build(tsc -b) falla con 25 errores enmain— todos preexistentes, no introducidos por UDT-011.Archivos afectados
src/web/src/features/medios/components/MedioForm.tsxz.coerce.number()sin<number>→ resolver infiereunknown(TS2322 cascading)src/web/src/features/secciones/components/SeccionForm.tsxz.coerce.number()sin<number>+z.enum()usaerrorMap(v3 API) → TS2322 + TS2769src/web/src/components/ui/pagination.tsxButtonPropsimportado como valor, debe serimport type(TS1484)src/web/src/tests/features/auth/ProtectedRoute.test.tsxHomePageyrenderProtecteddeclarados pero no usados (TS6133)src/web/src/tests/features/fiscal/iva/TipoDeIvaFormModal.test.tsxbeforeAll,afterAll,afterEachimportados pero no usados (TS6133)src/web/src/tests/features/medios/MedioForm.test.tsxbeforeAll,afterAll,afterEachimportados pero no usados (TS6133)src/web/src/tests/features/secciones/SeccionesListPage.test.tsxuserEventimportado pero no usado (TS6133)src/web/src/tests/features/users/updateUserPermisosOverrides.test.tsresult.grantaccede campo inexistente —UsuarioPermisostieneoverrides.grant(TS2339)src/web/src/tests/features/users/UsersListPage.test.tsxwithinimportado pero no usado (TS6133)Naturaleza del bug
Dos categorías:
1. Zod v4 syntax (patrón idéntico a issue #21 / PR #23)
z.coerce.number()sin genérico<number>→ Zod v4 infiere tipounknown, rompe el tipo delzodResolverde@hookform/resolversz.enum(values, { errorMap: ... })→ en Zod v4 el parámetro se llamaerror, noerrorMap2. TypeScript strict mode violations
verbatimModuleSyntaxrequiereimport typepara tipos (TS1484)noUnusedLocals+noUnusedParametersdetecta imports no usados en tests (TS6133)UsuarioPermisostieneoverrides.grantpero test accedegrantdirectamente (TS2339 — mismatch de shape)Impacto
mainno buildea limpio contsc -bnpm run buildfallaFix
Este issue se cierra con el PR que fixea los 9 archivos afectados.
Branch:
fix/ADM-011-web-ts-cleanupRelacionado
PuntoDeVentaForm.tsx(ADM-008) — mismo patrón Zod v4Criterios de cierre
cd src/web && npm run build→ 0 erroresnpm run test -- --run→ 275/275 passing (sin regresión)Closes #Nen body mergeado a main