2026-02-06 - 2026-05-06
Overview
39 Pull requests merged by 1 user
Merged
#62 feat(frontend): sidebar colapsable por secciones + fly-out en modo colapsado
Merged
#61 chore(frontend): reorganizar sidebar en secciones + quitar items disabled
Merged
#60 chore(prc-001): followups #54 #55 #57 #58 + cierre #52 #53
Merged
#59 feat: PRC-001 WordCounter + ChargeableCharConfig (SPIKE + scope delta)
Merged
#51 feat: paginación en GET /api/v1/products/{id}/prices (closes #47)
Merged
#50 refactor(frontend): unify dateFormat + numberFormat into formatters
Merged
#49 chore(infra): configure coverlet for backend C# coverage
Merged
#45 feat: PRD-003 ProductPrices históricos (ValidFrom/ValidTo)
Merged
#44 feat(domain): RubroConProductosActivosException + guard en DeactivateRubro (closes #41)
Merged
#43 refactor(tests): TestWebAppFactory.CreateClientWithOverrides para DI override scoped (closes #36)
Merged
#42 fix: openEdit fetch ProductTypeDetail antes de abrir dialog (closes #37)
Merged
#40 feat: PRD-002 Product CRUD
Merged
#38 feat: PRD-001 ProductType (flags + multimedia)
Merged
#35 feat: CAT-002 Regla de Oro Rama vs Hoja + validaciones
Merged
#30 feat: CAT-001 Árbol N-ario de Rubros
Merged
#34 fix: issue #29 — integration tests flakiness (DB split + SqlTestFixture consolidado)
Merged
#33 chore(frontend): limpiar lint errors pre-existentes
Merged
#32 chore(tests): dotnet format sobre archivos pre-existentes
Merged
#31 chore(frontend): DialogDescription en dialogs para a11y
Merged
#28 refactor(udt-011): Quartz jobs usan TimeProvider (closes #24)
Merged
#25 UDT-011: Localización Temporal Argentina (infra transversal)
Merged
#27 fix(web): cleanup 25 TS errors preexistentes en main (closes #26)
Merged
#23 fix(web): migrar PuntoDeVentaForm a sintaxis Zod v4 (closes #21)
Merged
#22 ADM-009: Tablas Fiscales (IVA + IIBB) — append-only versioned ref data
Merged
#19 ADM-008: Puntos de Venta (CRUD fundacional)
Merged
#18 fix(adm-001): cascada de inactividad Medio→Seccion — Closes #16
Merged
#15 ADM-001: Medios y Secciones (fundacional)
Merged
#14 UDT-010: Infraestructura de Auditoría y Trazabilidad — Closes #6
Merged
#13 Design System: bootstrap tokens + paleta brand El Día
Merged
#12 UDT-009: Overrides de PermisosJson por usuario — cierre módulo Auth
Merged
#11 UDT-008: Gestión completa de usuarios
Merged
#10 UDT-006: Middleware de Autorización (RBAC enforcement)
Merged
#9 UDT-005: Gestión de Permisos (RBAC) — catálogo + asignación rol↔permisos
Merged
#8 UDT-004: Gestión de Roles (tabla maestra + CRUD admin + validator dinámico + UI)
Merged
#7 docs: add minimal README
Merged
#4 UDT-003: Registro de Usuarios (admin-only) + fix JWT claim mapping
Merged
#3 UDT-002: Logout + Refresh Token con rotación y chain revocation
Merged
#2 UI Design System: shadcn/ui + Tailwind 4 + layout shell
Merged
#1 UDT-001: Login (scaffolding + JWT RS256 end-to-end)
21 Issues closed from 1 user
Closed
#58 [PRC-001] Suggestion: tsconfig ignoreDeprecations + MSW handler product-types
Closed
#57 [PRC-001] Alinear FluentValidation PricePerUnit con opt-in billing (permitir 0)
Closed
#55 [PRC-001] PRC-009 soporte de emoji en Symbol del config (R2.7 deferido)
Closed
#54 [PRC-001] V022/V024 precios reales por ProductType antes de go-live
Closed
#52 [PRC-001] R1.7 confirmación de hyphens: default = 2 palabras
Closed
#53 [PRC-001] GC-24 confirmación all-specials = 0 palabras
Closed
#47 [PRD-003] Paginación en GET /api/v1/products/{id}/prices
Closed
#46 [PRD-003] Unificar lib/dateFormat.ts + lib/numberFormat.ts en lib/formatters.ts
Closed
#48 [INFRA] Configurar coverlet para coverage en backend C#
Closed
#41 [PRD-002 / Domain] Rubro deactivation guard — rechazar desactivar Rubro con Productos activos
Closed
#36 [CAT-002 / Infra] TestWebApplicationFactory: desacoplar RSA singleton para permitir override scoped en e2e
Closed
#37 [PRD-001 / Frontend] ProductTypesPage.openEdit() debe fetchear ProductTypeDetail antes de precargar el form
Closed
#39 ProductTypesPage: openEdit() should fetch full ProductTypeDetail before populating form
Closed
#29 [CAT-001] Flakiness en integration tests por contención de SIGCM2_Test compartida entre proyectos
Closed
#24 UDT-011 T400.50 — Inyectar TimeProvider en Quartz jobs de Auditoría
Closed
#26 [WEB] Fixear 25 errores TS preexistentes en main (MedioForm + SeccionForm + pagination + tests)
Closed
#21 [ADM-008] Migrar PuntoDeVentaForm a sintaxis Zod v4 (bug preexistente)
Closed
#17 [DOC] Retroactivar specs UDT-008/009/010 en 2.6 Módulo Auth
Closed
#16 [ADM-001] Cascada de inactividad: medio inactivo debe congelar secciones (y productos) hijas
Closed
#6 [Auditoría] Registrar admin creador en alta de usuarios
Closed
#5 [UDT-005/006] Crear ProtectedRoute reutilizable con rol-check en frontend
23 Issues created by 1 user
Opened
#5 [UDT-005/006] Crear ProtectedRoute reutilizable con rol-check en frontend
Opened
#6 [Auditoría] Registrar admin creador en alta de usuarios
Opened
#16 [ADM-001] Cascada de inactividad: medio inactivo debe congelar secciones (y productos) hijas
Opened
#17 [DOC] Retroactivar specs UDT-008/009/010 en 2.6 Módulo Auth
Opened
#20 [ADM-009] OQ-008: definir si recargo RNI 50% vive en Configuracion (parametrizable) o como constante de dominio
Opened
#21 [ADM-008] Migrar PuntoDeVentaForm a sintaxis Zod v4 (bug preexistente)
Opened
#24 UDT-011 T400.50 — Inyectar TimeProvider en Quartz jobs de Auditoría
Opened
#26 [WEB] Fixear 25 errores TS preexistentes en main (MedioForm + SeccionForm + pagination + tests)
Opened
#29 [CAT-001] Flakiness en integration tests por contención de SIGCM2_Test compartida entre proyectos
Opened
#36 [CAT-002 / Infra] TestWebApplicationFactory: desacoplar RSA singleton para permitir override scoped en e2e
Opened
#37 [PRD-001 / Frontend] ProductTypesPage.openEdit() debe fetchear ProductTypeDetail antes de precargar el form
Opened
#39 ProductTypesPage: openEdit() should fetch full ProductTypeDetail before populating form
Opened
#41 [PRD-002 / Domain] Rubro deactivation guard — rechazar desactivar Rubro con Productos activos
Opened
#46 [PRD-003] Unificar lib/dateFormat.ts + lib/numberFormat.ts en lib/formatters.ts
Opened
#47 [PRD-003] Paginación en GET /api/v1/products/{id}/prices
Opened
#48 [INFRA] Configurar coverlet para coverage en backend C#
Opened
#52 [PRC-001] R1.7 confirmación de hyphens: default = 2 palabras
Opened
#53 [PRC-001] GC-24 confirmación all-specials = 0 palabras
Opened
#54 [PRC-001] V022/V024 precios reales por ProductType antes de go-live
Opened
#55 [PRC-001] PRC-009 soporte de emoji en Symbol del config (R2.7 deferido)
Opened
#56 [FAC-001] Guards de uso en Delete y Reactivate de ChargeableCharConfig (heredado de PRC-001)
Opened
#57 [PRC-001] Alinear FluentValidation PricePerUnit con opt-in billing (permitir 0)
Opened
#58 [PRC-001] Suggestion: tsconfig ignoreDeprecations + MSW handler product-types