Skip to content

[feat]: despliegue de esquema DDL en Supabase y documentacion del modelo de datos - #8

Merged
The-Fabry merged 2 commits into
developfrom
feature/database-schema
Oct 22, 2026
Merged

The-Fabry merged 2 commits into
developfrom
feature/database-schema

Conversation

@The-Fabry

Copy link
Copy Markdown
Collaborator

Resumen Ejecutivo

Se implementó el esquema de base de datos relacional normalizado (3FN) en Supabase (PostgreSQL) compuesto por 11 tablas para la gestión del sistema de pasajes interprovinciales. Se incluyeron políticas de acceso RLS para facilitación en desarrollo y se adjuntó la documentación técnica correspondiente en el repositorio.


Objetivo del cambio

  • Desplegar la estructura relacional base en la instancia activa de Supabase.
  • Habilitar el acceso CRUD mediante políticas Row Level Security (RLS) para el entorno de desarrollo.
  • Documentar detalladamente el modelo de datos y sus 11 tablas dentro del repositorio para revisión académica.

Contexto / Problema detectado

  • Solicitud académica / cliente

Detalle:

Requerimiento de diseño y persistencia de base de datos para la gestión de unidades, cooperativas, rutas, frecuencias y emisión de boletos del sistema de transporte.


Tipo de cambio

  • feat

Cambios realizados

  • Cambio 1: Creación del archivo DDL supabase/schema_supabase.sql con la definición de las 11 tablas relacionales.
  • Cambio 2: Incorporación de claves primarias, claves foráneas e índices de rendimiento en Ruta.
  • Cambio 3: Configuración de políticas de acceso global RLS (USING (true)) en PostgreSQL para desarrollo.
  • Cambio 4: Elaboración del documento de arquitectura de base de datos en docs/database.md.

Áreas / Componentes afectados

  • Base de datos
  • Documentación

Impacto del cambio

Impacto funcional

Permite a la aplicación conectarse directamente con Supabase para realizar consultas y registros de datos en tiempo real.

Impacto técnico

Proporciona una estructura relacional sólida en PostgreSQL respetando la Tercera Forma Normal (3FN).

Impacto en rendimiento

Optimización de consultas en rutas mediante la creación del índice Ruta_choferId_idx.

Impacto en seguridad

Implementación base de Row Level Security (RLS) en Supabase.


Riesgos identificados

  • Sin riesgos relevantes

Plan de mitigación:

El script DDL ha sido validado e inspeccionado previamente en el SQL Editor de Supabase sin presentar errores de ejecucion.


Compatibilidad

  • No rompe compatibilidad

Validación / Testing

Tipos de prueba ejecutados

  • Manuales

Resultado obtenido

Ejecución exitosa del script en el entorno activo de Supabase (Success. No rows returned). Las 11 tablas y sus políticas RLS quedaron correctamente creadas e inspeccionadas.


Cómo probar localmente

  1. Revisar la estructura del script SQL en la carpeta supabase/schema_supabase.sql.
  2. Consultar la documentación explicativa en docs/database.md.
  3. Ejecutar el script en cualquier instancia limpia de PostgreSQL / Supabase para validar la creación de tablas.

Evidencia visual

  • Despliegue completado y validado en el dashboard de Supabase (SQL Editor y Table Editor).

Issues relacionados

  • Related to #database

Consideraciones para despliegue

  • Requiere migración BD

Detalles:

Ejecutar supabase/schema_supabase.sql en caso de desplegar en un entorno completamente nuevo de PostgreSQL.


Plan de rollback

  • Revert simple

Métricas esperadas (si aplica)

  • Mayor seguridad

Checklist del autor

Código

  • Sigue estándares del proyecto
  • Código limpio y mantenible
  • Sin conflictos de merge

Calidad

  • Probado localmente
  • Sin errores visibles

Base de datos

  • Queries optimizadas
  • Índices revisados
  • No pérdida de datos

Documentación

  • Documentación técnica actualizada

Notas para reviewers

Revisar especialmente:

  • Definición de relaciones e integridad referencial en supabase/schema_supabase.sql.
  • Coherencia del modelo de datos en docs/database.md.

Resultado esperado tras merge

La rama develop contará con el archivo fuente de la base de datos y su documentación oficial.


Aprobación sugerida

  • Ready for Review

@The-Fabry The-Fabry self-assigned this Oct 22, 2026
@The-Fabry The-Fabry added documentation Improvements or additions to documentation enhancement New feature or request labels Oct 22, 2026

@juanjose1234456787654 juanjose1234456787654 left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

¡Excelente trabajo con el diseño del modelo relacional en 3FN y la documentación técnica! El PR está muy completo; sin embargo, para asegurar la escalabilidad y seguridad de cara a producción, recuerda que las políticas RLS con USING (true) deberán restringirse utilizando el contexto de autenticación (como auth.uid()), te sugiero evaluar la indexación de otras claves foráneas críticas con alto tráfico de JOIN para optimizar rendimiento, y considera adoptar las migraciones nativas de la CLI de Supabase en futuros cambios para garantizar la reproducibilidad del esquema.

@AnahiM2025 AnahiM2025 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Aprobado ✅

¡Gran trabajo! Quedó sólida la estructura de la base de datos 👏

Qué trae este PR

🗄️ Esquema relacional (supabase/schema_supabase.sql): Se definieron las 11 tablas del sistema normalizadas en 3FN.

🔗 Integridad y rendimiento: Se agregaron claves primarias, foráneas y el índice Ruta_choferId_idx para optimizar consultas.

🔒 Seguridad RLS: Se configuraron las políticas de acceso (USING (true)) en Supabase para el entorno de desarrollo.

📚 Documentación de BD (docs/database.md): Se detalló el modelo de datos y sus tablas para la revisión académica.

✅ Validación: El script se ejecutó exitosamente en el SQL Editor de Supabase (Success. No rows returned).

Con esto ya tenemos la base de datos lista para que la app empiece a consultar datos en tiempo real 💪
¡Vamos con todo! 🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants