clinica-veterinaria/orchestration/directivas/TRIGGER-COHERENCIA-CAPAS.md
rckrdmrd 3bb417fef3 [clinica-veterinaria] feat: Add SaaS documentation from erp-clinicas chain
- Add orchestration/directivas/ with TRIGGER-COHERENCIA-CAPAS.md and
  TRIGGER-INVENTARIOS.md adapted for veterinary domain
- Add orchestration/agents/perfiles/ with specialized agents:
  - PERFIL-VETERINARIO-AGENT.yml (domain expert)
  - PERFIL-DDL-VET-AGENT.yml (database specialist)
  - _INDEX.yml (agents catalog)
- Add MAPA-DOCUMENTACION.yml with full heritage chain references:
  - template-saas (origin/PROVIDER)
  - erp-core (abuelo/INTERMEDIATE)
  - erp-clinicas (padre/CONSUMER)
- Include normative references: NOM-064-ZOO-2000, NOM-051-ZOO-1995, SENASICA
- Define @VET_ prefixed aliases for project navigation
- Add species catalog (canine, feline, birds, rodents, exotic)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 19:50:27 -06:00

5.0 KiB

TRIGGER: Coherencia Entre Capas - Clinica Veterinaria

ID: TRIGGER-VET-COHERENCIA Version: 1.0.0 Proyecto: clinica-veterinaria Hereda de: @ERP_TRIGGER_COHERENCIA -> @CLINICAS_TRIGGER_COHERENCIA Alias: @VET_TRIGGER_COHERENCIA


Proposito

Validar que cada objeto creado en una capa tenga su correspondiente en las demas capas, manteniendo coherencia DDL - Backend - Frontend, con validaciones especificas para el dominio veterinario.

Cadena de Herencia

template-saas (PROVIDER)
    |
    v
erp-core (INTERMEDIATE)
    |
    v
erp-clinicas (CONSUMER)
    |
    v
clinica-veterinaria (SUB-VERTICAL) <- ESTE PROYECTO

Activacion

Automatica

  • Creacion/modificacion de tabla DDL en schema sub_veterinaria
  • Creacion/modificacion de entity TypeORM en modulos veterinarios
  • Creacion/modificacion de endpoint API especifico veterinario

Manual

  • Comando: @VET_VALIDATE_COHERENCE
  • Pre-commit hook

Reglas de Validacion

DDL -> Backend (OBLIGATORIO)

regla_1:
  condicion: "Nueva tabla DDL creada en sub_veterinaria.*"
  accion: "Verificar entity correspondiente existe"
  bloquea: true

regla_2:
  condicion: "Columna agregada a tabla veterinaria"
  accion: "Verificar campo en entity existe"
  bloquea: true

regla_3:
  condicion: "Constraint FK agregado a tabla veterinaria"
  accion: "Verificar relacion TypeORM existe"
  bloquea: true

Backend -> Frontend (CONDICIONAL)

regla_4:
  condicion: "Endpoint CRUD veterinario creado"
  accion: "Verificar hook/servicio frontend existe"
  bloquea: false  # Solo warning

regla_5:
  condicion: "DTO veterinario modificado"
  accion: "Verificar tipos TypeScript frontend"
  bloquea: false

Validaciones Especificas Clinica Veterinaria

Modulos CVT (Clinica Veterinaria)

Modulo DDL Schema Backend Path Frontend Path
CVT-001 Mascotas sub_veterinaria.pets, pet_owners modules/mascotas/ pages/mascotas/
CVT-002 Vacunacion sub_veterinaria.vaccinations modules/vacunacion/ pages/vacunacion/
CVT-003 Desparasitaciones sub_veterinaria.dewormings modules/desparasitaciones/ pages/desparasitaciones/
CVT-004 Hospitalizacion sub_veterinaria.hospitalizations modules/hospitalizacion/ pages/hospitalizacion/
CVT-005 Estetica Canina sub_veterinaria.grooming_* modules/estetica/ pages/estetica/
CVT-006 Farmacia Veterinaria sub_veterinaria.vet_medications modules/farmacia/ pages/farmacia/

Coherencia de Nombres

DDL: sub_veterinaria.tabla_nombre (snake_case)
Entity: TablaNombre (PascalCase)
Service: tabla-nombre.service.ts (kebab-case)
Controller: tabla-nombre.controller.ts (kebab-case)

Validaciones Normativas (NOM-064-ZOO-2000)

Campos Obligatorios para Expediente Veterinario

validacion_normativa:
  condicion: "Entity de expediente veterinario"
  campos_requeridos:
    - "especie"
    - "raza"
    - "sexo"
    - "edad_aproximada"
    - "peso"
    - "chip_id"  # Si aplica
    - "propietario_id"
    - "historial_vacunacion"
    - "historial_desparasitacion"
    - "alergias_conocidas"
    - "diagnostico"
    - "tratamiento"
  referencia_normativa: "NOM-064-ZOO-2000"
  bloquea: true

Integridad de Registro de Mascotas

validacion_mascotas:
  condicion: "Tabla pets creada/modificada"
  reglas:
    - "Especie obligatoria (catalogo SENASICA)"
    - "Propietario vinculado obligatorio"
    - "Historial medico trazable"
    - "Chip/Identificacion unica"
  bloquea: true

Control de Vacunacion

validacion_vacunas:
  condicion: "Tabla vaccinations creada/modificada"
  reglas:
    - "Lote de vacuna registrado"
    - "Fecha de aplicacion"
    - "Fecha de proxima aplicacion"
    - "Medico veterinario responsable"
    - "Consentimiento del propietario"
  referencia_normativa: "SENASICA"
  bloquea: true

Excepciones Permitidas

  1. Tablas M:N gestionadas por TypeORM

    • Documentar en ENTITIES-CATALOG.md
  2. Tablas de auditoria/sistema

    • Prefijo: _audit_vet, _system_vet
  3. Tablas heredadas de erp-clinicas

    • No requieren entity local si se usa la del padre (adaptada)
  4. Vistas para reportes sanitarios

    • Documentar en DATABASE-SCHEMA.md

Metricas

Metrica Objetivo Actual
Coherencia DDL-Entity 100% TBD
Coherencia Entity-Service 100% TBD
Coherencia API-Frontend 95% TBD
Cumplimiento NOM-064 100% TBD

Referencias

  • @VET_DEF_DB - DATABASE-SCHEMA.md
  • @VET_DEF_ENTITIES - ENTITIES-CATALOG.md
  • @CLINICAS_TRIGGER_COHERENCIA - Trigger padre en erp-clinicas
  • @ERP_TRIGGER_COHERENCIA - Trigger abuelo en erp-core
  • @WS_TRIGGER_COHERENCIA - Trigger raiz del workspace

Normativa Aplicable:

  • NOM-064-ZOO-2000: Requisitos para establecimientos de atencion medica veterinaria
  • NOM-051-ZOO-1995: Trato humanitario en movilizacion de animales
  • SENASICA: Servicio Nacional de Sanidad, Inocuidad y Calidad Agroalimentaria
  • NOM-033-SAG/ZOO-2014: Metodos para dar muerte a animales domesticos y silvestres