From b95fc117454a2440dd7aff6d793e5481eb8cabae Mon Sep 17 00:00:00 2001 From: Marco Gallegos Date: Sat, 13 Dec 2025 15:03:55 -0600 Subject: [PATCH] Add implementation roadmap for HR Platform This document outlines the technical and functional tasks required to build the HR Platform system, including project setup, Docker configuration, database models, Google Sheets integration, and frontend development. --- TASKS.md | 251 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 251 insertions(+) create mode 100644 TASKS.md diff --git a/TASKS.md b/TASKS.md new file mode 100644 index 0000000..6d0d54c --- /dev/null +++ b/TASKS.md @@ -0,0 +1,251 @@ +# TASKS – Roadmap de Implementación + +Este documento define las **tareas técnicas y funcionales** necesarias para construir el sistema **HR Platform** descrito en el README principal. + +El objetivo es permitir ejecutar un **staging funcional completo**, con una interfaz limpia usando la paleta **Catppuccin Latte**, manteniendo consistencia visual y técnica. + +--- + +## 1. Setup inicial del proyecto + +### 1.1 Repositorio + +* Crear repositorio Git. +* Definir rama `main` y `develop`. +* Configurar `.gitignore` para Node.js y Docker. + +--- + +### 1.2 Base Node.js + +* Inicializar proyecto Node.js. + +* Definir estructura base: + + * `src/` + * `src/server` + * `src/modules` + * `src/config` + * `src/routes` + * `src/services` + * `src/webhooks` + +* Configurar servidor HTTP en **puerto 3011**. + +* Health check endpoint (`/health`). + +--- + +## 2. Docker y entorno + +### 2.1 Dockerfile + +* Crear Dockerfile para backend Node.js. +* Uso de variables de entorno. +* Build reproducible. + +--- + +### 2.2 Docker Compose + +* Crear `docker-compose.yml` con: + + * Servicio `api` (Node.js). + * Servicio `db`. +* Red interna. +* Volúmenes persistentes. + +--- + +### 2.3 Variables de entorno + +* Crear `.env.example` con: + + * Puerto + * DB host / user / password + * Google Sheets credentials + * Webhook base URLs + +--- + +## 3. Base de datos + +### 3.1 Modelo inicial + +* Definir tablas: + + * socias + * sucursales + * vacaciones + * permisos + * eventos + * configuraciones + +--- + +### 3.2 Migraciones + +* Sistema de migraciones. +* Seeds básicos (configuración inicial). + +--- + +## 4. Importación desde Google Sheets + +### 4.1 Integración API + +* Conexión segura a Google Sheets API. +* Manejo de credenciales por entorno. + +--- + +### 4.2 Lógica de sincronización + +* Mapeo dinámico de columnas. +* Identificación de registros. +* Normalización de campos vacíos. +* Prevención de duplicados. + +--- + +### 4.3 Logs + +* Registro de ejecuciones. +* Errores y advertencias. + +--- + +## 5. Gestión de socias + +* Endpoint CRUD básico. +* Validaciones de datos. +* Asociación a sucursal. +* Campo crítico: fecha de ingreso. + +--- + +## 6. Vacaciones + +### 6.1 Configuración legal + +* Tabla configurable de días por antigüedad. +* Editable sin cambios de código. + +--- + +### 6.2 Cálculo de ciclos + +* Cálculo automático por fecha de ingreso. +* Generación de saldo anual. +* Caducidad automática. + +--- + +### 6.3 Solicitudes + +* Crear solicitud. +* Validar saldo. +* Registrar consumo. +* Mantener historial inmutable. + +--- + +## 7. Permisos + +* Crear permisos por horas o días. +* Motivos configurables. +* Estados y trazabilidad. + +--- + +## 8. Webhooks + +### 8.1 Infraestructura + +* Crear módulo de emisión de eventos. +* Registro de eventos enviados. + +--- + +### 8.2 Endpoints + +* `/webhook/vacaciones/{token}` + +* `/webhook/permisos/{token}` + +* Generación de token aleatorio (11 chars). + +--- + +## 9. Frontend (Staging) + +### 9.1 Base UI + +* Frontend ligero (React / similar). +* Consumo de API. +* Sin lógica hardcodeada. + +--- + +### 9.2 Paleta Catppuccin Latte + +Usar la paleta **Catppuccin Latte** como base visual: + +* Fondo principal claro. +* Tipografía oscura suave. +* Acentos pastel. + +Componentes: + +* Header +* Sidebar +* Cards +* Inputs +* Tablas +* Estados (success / warning / error) + +--- + +### 9.3 Búsqueda incremental + +* Input único. +* Resultados en tiempo real. +* Selección despliega perfil completo. + +--- + +## 10. Staging funcional + +* Deploy en entorno staging. +* Acceso vía `hr.soul23.cloud`. +* Validación end-to-end: + + * Importación + * Búsqueda + * Vacaciones + * Permisos + * Webhooks + +--- + +## 11. Observabilidad + +* Logs estructurados. +* Manejo de errores. +* Métricas básicas. + +--- + +## 12. Checklist de salida + +* Docker Compose operativo. +* API estable. +* UI funcional. +* Reglas de negocio respetadas. +* README actualizado. + +--- + +Este documento es el **plan ejecutable** del proyecto. + +Si una tarea no aparece aquí, no forma parte del staging.