WORKFLOW
WORKFLOW.md
Flujo de Trabajo — Edifiko / Rappid Tech
Resumen del proceso interno de desarrollo. Para la documentación completa, consultá los links al final de cada sección.
Índice
1. Gestión de tareas (Jira + GitHub)
Entornos del proyecto
| Rama | Propósito |
|---|---|
dev | Base para desarrollo activo de nuevas features |
test | Integración y QA antes de producción |
main | Versión estable en producción |
Jerarquía en Jira
EPIC → Story → Task / Bug
- EPIC: Módulo o bloque grande (ej.
NP-1 – Módulo de autenticación). - Story: Conjunto de tareas de una funcionalidad concreta.
- Task: Acción técnica individual, siempre dentro de una Story.
- Bug: Error detectado en testing o producción, asociado a una Story o Epic.
Nomenclatura de ramas
Las ramas se crean desde Jira (Create branch) siguiendo el formato:
[JIRA-ID]_[TIPO]_[nombre-de-la-tarea]
| Tipo | Ejemplo |
|---|---|
EPIC | NP-1_EPIC_modulo-autenticacion |
STORY | NP-12_STORY_login-component |
TASK | NP-45_TASK_create-api-service |
BUG | NP-58_BUG_fix-auth-token |
Estados del tablero
To Do → In Progress → Code Review → Merge → Testing → Done
Naming de Pull Requests
[IDENTIFICADOR] Descripción breve
| Identificador | Cuándo usarlo | Ejemplo |
|---|---|---|
[NP-XXX] | Referencia directa a un ticket Jira | [NP-45] Create API service |
[FIX] | Corrección puntual sin ticket | [FIX] subscription box layout |
[BUMP] | Incremento de versión, merge hacia test | [BUMP] V1.2.0 |
[RELEASE] | Versión de release, merge hacia main | [RELEASE] V1.2.0 |
Orden de merge
task / bug → story → epic → dev → test → main
Requisitos antes de pasar a Code Review
- El proyecto compila sin errores (
pnpm build). - El entorno corre sin fallos (
pnpm dev). - No hay errores visibles en consola.
- El código está formateado y limpio.
Flujo del desarrollador (paso a paso)
bash
# 1. Mover la tarea a "In Progress" en Jira
# 2. Crear la rama desde Jira y hacer checkout local
git checkout -b NP-45_TASK_create-api-service
# 3. Desarrollar la funcionalidad...
# 4. Verificar, agregar y commitear
git status
git add .
git commit -m "feat: create api service for properties"
# 5. Pushear al repositorio
git push --set-upstream origin NP-45_TASK_create-api-service
# 6. Abrir PR en modo Draft en GitHub
# 7. Al terminar: cambiar PR a "Ready for Review" y mover tarea a "Code Review" en Jira
📄 Documentación completa: 01 - Proceso de gestión de tareas
2. Control de versiones (SemVer)
Se utiliza Versionado Semántico (MAJOR.MINOR.PATCH) en todos los repositorios.
| Componente | Cuándo se incrementa | Ejemplo |
|---|---|---|
MAJOR | Cambios incompatibles o ruptura de la API | 1.0.0 → 2.0.0 |
MINOR | Nueva funcionalidad que mantiene compatibilidad | 1.0.0 → 1.1.0 |
PATCH | Corrección menor sin nuevas features | 1.1.0 → 1.1.1 |
Nomenclatura de ramas y tags de versión
| Tipo | Convención | Ejemplo |
|---|---|---|
| Rama de versión | BUMP_VX.Y.Z | BUMP_V1.2.0 |
| Tag de versión | vX.Y.Z | v1.2.0 |
Flujo para crear una nueva versión
bash
# 1. Actualizar la rama dev
git checkout dev
git pull upstream dev
# 2. Verificar que el build compile (asegúrate de que dev no esté corriendo)
pnpm build
# 3. Incrementar la versión (patch / minor / major según el caso)
npm version patch # actualiza package.json, crea commit y tag automáticamente
# 4. Crear la rama de versión
git checkout -b BUMP_V1.2.1
# 5. Pushear la rama y los tags
git push upstream --tags
git push upstream BUMP_V1.2.1
# 6. Abrir PR desde BUMP_V1.2.1 hacia test
# Incluir en la descripción un resumen de los cambios incluidos
📄 Documentación completa: 02 - Control de versiones
3. Resolución de conflictos
Los conflictos aparecen al integrar cambios de múltiples Tasks hacia una misma Story. GitHub mostrará el mensaje:
"This branch has conflicts that must be resolved"
Procedimiento
bash
# 1. Actualizar la rama destino (Story)
git checkout NP-12_STORY_login-component
git pull upstream NP-12_STORY_login-component
# 2. Ir a tu rama (Task) y traer los cambios de la Story
git checkout NP-45_TASK_create-api-service
git merge NP-12_STORY_login-component
# 3. Resolver los conflictos con el Merge Editor de VS Code
# - Current Change: tu código (Task)
# - Incoming Change: código de la Story
# - Result: versión final combinada
# 4. Confirmar la resolución
git add .
git commit -m "Resolve merge conflicts with NP-12_STORY_login-component"
# 5. Pushear — GitHub eliminará automáticamente el estado de conflicto en el PR
git push upstream NP-45_TASK_create-api-service
Reglas al resolver conflictos
- Priorizar el código más actualizado o validado.
- Nunca eliminar código ajeno sin entenderlo. Si hay dudas, consultá con el autor.
- Usá siempre el Merge Editor visual de VS Code en lugar de resolver por terminal.
- Hacé un único commit de resolución con mensaje claro.
- Verificá que el proyecto compile antes de pushear (
pnpm build). - Sincronizá tu rama con la Story frecuentemente para minimizar conflictos futuros.
📄 Documentación completa: 03 - Resolución de conflictos
