| id |
title |
type |
status |
priority |
version |
created_date |
updated_date |
source |
normativas |
| MGN-019-feature-flags |
Sistema de Feature Flags para Clinica Dental |
Module |
Draft |
P1 |
1.0.0 |
2026-01-13 |
2026-01-13 |
erp-core/MGN-019-feature-flags |
|
MGN-019: Sistema de Feature Flags Dental
Descripcion
Sistema propio de feature flags para control granular de funcionalidades odontologicas por clinica y plan. Permite toggle de features dentales sin redeploy, rollout gradual de nuevas funcionalidades, y override manual por clinica para casos especiales.
Objetivos
- Toggle de features dentales sin necesidad de redeploy
- Flags configurables por clinica y por plan
- Gradual rollout (porcentaje de clinicas)
- A/B testing de funcionalidades
- Override manual por clinica con expiracion opcional
Alcance
| Caracteristica |
Incluido |
Notas |
| Boolean flags |
Si |
On/off simple |
| Plan-based flags |
Si |
Por tier de plan |
| Tenant override |
Si |
Admin puede activar/desactivar |
| Percentage rollout |
Si |
% de clinicas |
| User targeting |
No |
Fase posterior |
| Analytics |
No |
Fase posterior |
Feature Flags Odontologicos
Funcionalidades por Plan
| Feature Flag |
Consultorio |
Clinica |
Centro |
odontograma_digital |
- |
X |
X |
radiografias_digitales |
- |
X |
X |
ortodoncia_3d |
- |
- |
X |
asistente_ia_dental |
- |
- |
X |
whatsapp_pacientes |
- |
- |
X |
multi_sucursal |
- |
- |
X |
reportes_avanzados |
- |
X |
X |
integracion_laboratorio |
- |
X |
X |
presupuestos_financiados |
- |
X |
X |
Features en Rollout
| Feature Flag |
Descripcion |
Rollout % |
Estado |
nuevo_odontograma_v2 |
Nueva UI de odontograma |
25% |
Beta |
radiografia_ia |
Analisis IA de radiografias |
10% |
Alpha |
agenda_inteligente |
Sugerencias de agenda |
50% |
Beta |
recordatorio_sms |
Recordatorios via SMS |
100% |
GA |
Features de Normativa
| Feature Flag |
Descripcion |
Default |
consentimiento_digital |
Firma digital de consentimientos |
Activado |
historial_nom013 |
Historial conforme NOM-013-SSA2 |
Activado |
bitacora_cofepris |
Bitacora de procedimientos |
Activado |
Arquitectura de Evaluacion
Request (ej: acceder odontograma_digital)
|
v
+-------------------+
| FeatureFlagService|
+-------------------+
|
+---> 1. Check tenant override (clinica especifica)
| |
| v (si existe)
| Return override value
|
+---> 2. Check plan features (Consultorio/Clinica/Centro)
| |
| v (si definido en plan)
| Return plan value
|
+---> 3. Check global flag + rollout
| |
| v
| Evaluate (boolean/percentage)
|
v
Return final value
Prioridad de Evaluacion
- Tenant Override - Maxima prioridad, permite excepciones (ej: demo, VIP)
- Plan Features - Features incluidas en plan de la clinica
- Global Flag - Valor default con soporte de rollout gradual
Casos de Uso
Ejemplo: Activar ortodoncia_3d para demo
// Override para clinica en demo
await featureFlagService.setOverride({
tenantId: 'clinica_demo_123',
flag: 'ortodoncia_3d',
value: true,
expiresAt: addDays(new Date(), 14), // 14 dias de demo
reason: 'Demo para cliente potencial'
});
Ejemplo: Rollout gradual de radiografia_ia
// Configurar rollout al 25% de clinicas
await featureFlagService.setRollout({
flag: 'radiografia_ia',
percentage: 25,
filterByPlan: ['clinica', 'centro_dental']
});
Ejemplo: Verificar feature en codigo
@Get('odontograma/3d')
@FeatureGuard('ortodoncia_3d')
async getOdontograma3D(@Tenant() tenant: Tenant) {
// Solo accesible si flag activo para esta clinica
return this.ortodonciaService.get3DModel(tenant.id);
}
Documentacion del Modulo
Dependencias
Modulos Requeridos
- MGN-004-tenants - Contexto de clinica
- MGN-017-plans - Planes de suscripcion
Modulos Dependientes
- Odontograma (feature: odontograma_digital)
- Radiografias (feature: radiografias_digitales)
- Ortodoncia (feature: ortodoncia_3d)
- IA (feature: asistente_ia_dental)
- WhatsApp (feature: whatsapp_pacientes)
Referencias
Modulo MGN-019 - Feature Flags | Clinica Dental
Propagado desde erp-core via erp-clinicas
Actualizado: 2026-01-13