Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions api/callcentersite/callcentersite/apps/configuration/urls.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@

urlpatterns = [
path("", ConfiguracionListView.as_view(), name="list"),
path("<str:clave>/", ConfiguracionEditarView.as_view(), name="editar"),
path("<str:clave>/historial/", ConfiguracionHistorialView.as_view(), name="historial"),
path("exportar/", ConfiguracionExportarView.as_view(), name="exportar"),
path("importar/", ConfiguracionImportarView.as_view(), name="importar"),
path("auditar/", ConfiguracionAuditoriaView.as_view(), name="auditar"),
path("<str:clave>/historial/", ConfiguracionHistorialView.as_view(), name="historial"),
path("<str:clave>/restaurar/", ConfiguracionRestaurarView.as_view(), name="restaurar"),
path("<str:clave>/", ConfiguracionEditarView.as_view(), name="editar"),
]
2 changes: 2 additions & 0 deletions docs/backend/adr/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,8 @@ Ver: `docs/backend/plantillas/plantilla-adr-backend.md`

(Lista se actualizara conforme se creen ADRs formales)

- `ADR-BACK-006-unificacion-configuracion.md`: consolida la app de configuraciones en un solo módulo en inglés manteniendo rutas en español y eliminando duplicaciones.

### Por implementar:
- Arquitectura de permisos granular
- Estrategia de testing (TDD)
Expand Down
35 changes: 35 additions & 0 deletions docs/gobernanza/adr/ADR-BACK-006-unificacion-configuracion.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
---
id: ADR-BACK-006
tipo: adr
estado: aceptada
fecha: 2025-11-20
contexto: |
Existen dos implementaciones del dominio de configuraciones: la app legacy `configuracion` (en español)
y la app moderna `configuration` (en inglés). La duplicidad generaba rutas paralelas, modelos distintos
y esfuerzos duplicados de mantenimiento. La consolidación previa eliminó la app en español y expuso las
rutas heredadas desde el módulo en inglés, produciendo un diff con -862 líneas y +324, lo que generó dudas
sobre si se perdió funcionalidad.
decision: |
Mantener únicamente la app `configuration` como fuente de verdad y mapear las rutas en español hacia sus
vistas. No se recrearon los archivos eliminados porque los comportamientos existentes en `configuration`
cubren los casos de uso de la app legacy; las pruebas unitarias validan que los endpoints en español se
resuelven a la lógica en inglés.
consecuencias: |
- Se reduce la superficie de código y la duplicación (-862 líneas) al remover la app legacy.
- Las adiciones (+324 líneas) se concentran en exponer endpoints equivalentes (detalle, historial,
auditoría) y en pruebas de consolidación; no se reintroducen modelos/servicios duplicados.
- El mantenimiento se simplifica: una única base de código, un único esquema de permisos y un solo
historial de auditoría.
- Las rutas en español siguen operativas pero delegan toda la lógica al módulo en inglés, preservando
compatibilidad y comentarios en español.
alternativas: |
- Conservar ambas apps y sincronizarlas: descartada por alto costo de mantenimiento y riesgo de
divergencia funcional.
- Migrar todo a español: incompatible con la estandarización previa del dominio en inglés y la
nomenclatura de permisos ya desplegada.
supersedes: ADR-BACK-002
notas: |
La diferencia de líneas (-862 vs +324) refleja la eliminación de archivos completos (modelos, serializers,
servicios y migraciones legacy) y la reutilización de la lógica existente. No implica pérdida de alcance,
ya que los endpoints y servicios relevantes se cubren desde `configuration` y están respaldados por tests
unitarios añadidos en la consolidación.
Loading