Saltar a contenido

Modelo de datos — <schema>.<tabla>

Estado: Propuesto | Activo | Obsoleto Microservicio dueño: svc-... Base de datos: core_sigfa | erp_sigfa | crm_sigfapro Esquema: core.identidad Tabla: mae_entidades Última actualización: AAAA-MM-DD ADR relacionados: ../../adr/NNNN-titulo.md (reemplazar con el enlace real)

Propósito y límites

Describe en 2-4 líneas qué representa la tabla, quién puede escribirla y qué no pertenece a este microservicio. Indica el origen de cualquier referencia externa.

Clasificación y tenencia

Aspecto Valor
Tipo Catálogo (cat_), Maestro (mae_), Transacción (trx_), Relación (rel_), Configuración (cfg_) o Log (log_)
Tiene empresa_id Sí; o No (justificar)
RLS Sí, política aislamiento_empresa; o No (justificar)
Soft delete Sí, deleted_at; o No (justificar)

Columnas

Columna Tipo PostgreSQL Nulo Default Regla / índice Descripción
id UUID No gen_random_uuid() PK
empresa_id BIGINT No RLS / FK interna si aplica
created_at TIMESTAMPTZ No now()
updated_at TIMESTAMPTZ No now()
deleted_at TIMESTAMPTZ Soft delete
created_by UUID
updated_by UUID

Elimina las columnas estándar que no apliquen y deja una justificación en "Clasificación y tenencia". Agrega las columnas propias de la entidad.

Constraints e índices

Nombre Tipo Definición / propósito
pk_<tabla> PK id
uq_<tabla>_... UNIQUE
ix_<tabla>_... Índice
ck_<tabla>_... CHECK

Relaciones internas

Columna local Tabla destino Cardinalidad Regla
<entidad>_id <schema>.<tabla> N:1 FK física dentro del mismo servicio

Referencias externas

Campo local Microservicio dueño Entidad externa Integración
<entidad>_id svc-... <entidad> UUID + evento o endpoint; sin FK

Elimina esta sección si no hay referencias externas. Nunca agregues una FK física hacia otro microservicio.

RLS y auditoría

Indica cómo se aplica RLS, qué rol puede omitirla si existe y qué eventos o acciones de auditoría genera. Si no aplica RLS o auditoría, justifícalo.

Artefactos de referencia

  • SQL DDL: ../sql/ddl/<tabla>.sql (desde database/entidades/)
  • SQLAlchemy: ../sqlalchemy/<entidad>.py (desde database/entidades/)
  • Migración Alembic: ../alembic/versions/NNNN_<grupo>.py (desde database/entidades/)
  • Migración operativa: enlace al repositorio de svc-..., archivo y versión/commit.

Cambios relevantes

Fecha Cambio ADR / migración
AAAA-MM-DD Creación de la entidad