- Update docs/_MAP.md with new phase references - Add docs/04-fase-saas/ phase structure - Add docs/05-fase-ia/ phase structure Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
166 lines
4.7 KiB
Markdown
166 lines
4.7 KiB
Markdown
---
|
|
id: MGN-019-fflags-vet
|
|
title: Sistema de Feature Flags Veterinarios
|
|
type: Module
|
|
status: Draft
|
|
priority: P1
|
|
version: 1.0.0
|
|
created_date: 2026-01-13
|
|
updated_date: 2026-01-13
|
|
source: erp-core/MGN-019-feature-flags
|
|
---
|
|
|
|
# MGN-019: Sistema de Feature Flags para Clinicas Veterinarias
|
|
|
|
## Descripcion
|
|
|
|
Sistema propio de feature flags para control granular de funcionalidades veterinarias por clinica y plan. Permite toggle de features sin redeploy, rollout gradual por porcentaje de clinicas, y override manual por clinica.
|
|
|
|
## Normativas Aplicables
|
|
|
|
- **NOM-064-ZOO-2000**: Features relacionadas con prescripcion
|
|
- **SENASICA**: Features de reportes oficiales
|
|
- **Bienestar Animal**: Features de hospitalizacion
|
|
|
|
## Objetivos
|
|
|
|
- Toggle features veterinarias 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
|
|
|
|
## Feature Flags Veterinarios
|
|
|
|
### Core - Disponibles en todos los planes
|
|
|
|
| Flag | Descripcion | Default |
|
|
|------|-------------|---------|
|
|
| `expediente_digital` | Expediente clinico digital | ON |
|
|
| `cartilla_vacunacion` | Cartilla de vacunacion digital | ON |
|
|
| `agenda_citas` | Sistema de citas | ON |
|
|
| `registro_mascotas` | Registro de pacientes | ON |
|
|
|
|
### Profesional - Plan Profesional+
|
|
|
|
| Flag | Descripcion | Default |
|
|
|------|-------------|---------|
|
|
| `hospitalizacion` | Modulo de internamiento | OFF (plan < Profesional) |
|
|
| `laboratorio` | Integracion con laboratorios | OFF (plan < Profesional) |
|
|
| `whatsapp_notifications` | Notificaciones WhatsApp | OFF (plan < Profesional) |
|
|
| `control_vacunas` | Recordatorios automaticos de vacunas | OFF (plan < Profesional) |
|
|
|
|
### Clinica - Plan Clinica+
|
|
|
|
| Flag | Descripcion | Default |
|
|
|------|-------------|---------|
|
|
| `asistente_ia` | Asistente veterinario IA | OFF (plan < Clinica) |
|
|
| `reportes_avanzados` | Analytics y dashboards | OFF (plan < Clinica) |
|
|
| `webhooks_outbound` | Webhooks a sistemas externos | OFF (plan < Clinica) |
|
|
| `telemedicina` | Consultas remotas | OFF (plan < Clinica) |
|
|
|
|
### Hospital - Plan Hospital
|
|
|
|
| Flag | Descripcion | Default |
|
|
|------|-------------|---------|
|
|
| `multi_sucursal` | Gestion multi-sede | OFF (plan < Hospital) |
|
|
| `api_publica` | Acceso a API REST | OFF (plan < Hospital) |
|
|
| `custom_branding` | Personalizacion de marca | OFF (plan < Hospital) |
|
|
| `senasica_integration` | Reportes automaticos SENASICA | OFF (plan < Hospital) |
|
|
|
|
### Experimentales (Rollout Gradual)
|
|
|
|
| Flag | Descripcion | Rollout % |
|
|
|------|-------------|-----------|
|
|
| `nueva_ui_expediente` | Nueva interfaz de expediente | 10% |
|
|
| `ia_diagnostico_apoyo` | IA de apoyo diagnostico | 5% |
|
|
| `telemedicina_video` | Videollamadas con propietarios | 15% |
|
|
| `integracion_wearables` | Collares inteligentes | 0% (beta cerrada) |
|
|
|
|
## Arquitectura de Evaluacion
|
|
|
|
```
|
|
Request a funcionalidad veterinaria
|
|
|
|
|
v
|
|
+-------------------+
|
|
| FeatureFlagService|
|
|
+-------------------+
|
|
|
|
|
+---> 1. Check override de clinica
|
|
| |
|
|
| v (si existe)
|
|
| Return override value
|
|
|
|
|
+---> 2. Check plan de clinica
|
|
| |
|
|
| v (si feature en plan)
|
|
| Return plan value
|
|
|
|
|
+---> 3. Check rollout %
|
|
| |
|
|
| v
|
|
| Evaluate by clinic_id hash
|
|
|
|
|
v
|
|
Return final value (ON/OFF)
|
|
```
|
|
|
|
## Prioridad de Evaluacion
|
|
|
|
1. **Override de Clinica** - Maxima prioridad, permite excepciones manuales
|
|
2. **Features del Plan** - Segun plan contratado por la clinica
|
|
3. **Rollout Gradual** - Para features experimentales
|
|
|
|
## Casos de Uso
|
|
|
|
### Caso 1: Activar Beta para Clinica Especifica
|
|
|
|
```yaml
|
|
# Override para clinica VIP
|
|
override:
|
|
clinica_id: "vet-premium-001"
|
|
flag: "ia_diagnostico_apoyo"
|
|
value: true
|
|
expires_at: "2026-03-01"
|
|
reason: "Beta tester"
|
|
```
|
|
|
|
### Caso 2: Rollout Gradual de Telemedicina
|
|
|
|
```yaml
|
|
# Rollout gradual 15%
|
|
flag:
|
|
name: "telemedicina_video"
|
|
rollout_percentage: 15
|
|
target_plans: ["clinica", "hospital"]
|
|
tracking_enabled: true
|
|
```
|
|
|
|
### Caso 3: Desactivar Feature por Incidente
|
|
|
|
```yaml
|
|
# Kill switch de emergencia
|
|
flag:
|
|
name: "integracion_laboratorio_externo"
|
|
value: false
|
|
reason: "Incidente API externa - ticket INC-001"
|
|
disabled_by: "admin@clinica.com"
|
|
disabled_at: "2026-01-13T10:00:00Z"
|
|
```
|
|
|
|
## Documentacion del Modulo
|
|
|
|
- [Mapa del Modulo](./_MAP.md)
|
|
- [Requerimientos](./requerimientos/INDICE-RF-FFLAGS.md)
|
|
- [Especificaciones](./especificaciones/INDICE-ET-FFLAGS.md)
|
|
- [Historias de Usuario](./historias-usuario/INDICE-US-FFLAGS.md)
|
|
- [Trazabilidad](./implementacion/TRACEABILITY.yml)
|
|
|
|
---
|
|
|
|
*Modulo: MGN-019-feature-flags-vet*
|
|
*Propagado desde: erp-core/MGN-019-feature-flags*
|
|
*Adaptado para: Dominio veterinario*
|
|
*Actualizado: 2026-01-13*
|