@@ -54,42 +54,160 @@ Para mejoras:
5454
5555## Pull Requests
5656
57- ### Antes de Enviar un PR
57+ ### ⚠️ Flujo de Trabajo Obligatorio
58+
59+ ** IMPORTANTE** : Todos los Pull Requests deben seguir este flujo:
60+
61+ ```
62+ Tu rama → staging → main (producción)
63+ ```
64+
65+ ** ⛔ NO SE ACEPTARÁN Pull Requests directos a ` main ` **
66+
67+ ### Proceso de Contribución Paso a Paso
68+
69+ #### 1. Antes de Enviar un PR
5870
59711 . Haz fork del repositorio
60- 2 . Crea una rama para tu feature o fix
72+ 2 . Crea una rama descriptiva para tu feature o fix
61733 . Realiza tus cambios siguiendo los estándares
62- 4 . Prueba localmente antes de enviar
63- 5 . Actualiza la documentación si es necesario
74+ 4 . ** Asegúrate de usar Conventional Commits** (ver sección abajo)
75+ 5 . Prueba localmente antes de enviar
76+ 6 . Actualiza la documentación si es necesario
6477
65- ### Proceso de PR
78+ #### 2. Crear Pull Request hacia ` staging `
6679
67- 1 . Crea el PR con una descripción clara
80+ 1 . ** Crea el PR apuntando a la rama ` staging ` ** (NO a ` main ` )
68812 . Usa las plantillas disponibles
69- 3 . Vincula issues relacionados
70- 4 . Responde a feedback de los revisores
71- 5 . Mantén el PR actualizado con ` main `
82+ 3 . ** Completa TODA la información del formulario del PR **
83+ 4 . Vincula issues relacionados
84+ 5 . Incluye capturas de pantalla si hay cambios visuales
7285
73- ### Estructura del PR
86+ #### 3. Revisión en Staging
7487
75- ``` markdown
76- ## Descripción
77- Breve descripción de los cambios
88+ - Una vez aprobado tu PR, se hará merge a ` staging `
89+ - Se desplegará automáticamente una ** versión de prueba** en:
90+ - 🔗 ** https://staging.pythoncdmx.org **
91+ - Esta versión incluye un banner que indica "STAGING ENVIRONMENT"
92+ - Podrás ** validar tus cambios en línea** antes de producción
93+
94+ #### 4. Promoción a Producción
7895
79- ## Tipo de Cambio
80- - [ ] Bug fix
81- - [ ] Nueva característica
82- - [ ] Mejora de documentación
83- - [ ] Refactorización
96+ - Si todo está correcto en staging, el equipo core:
97+ - Creará un PR interno de ` staging ` → ` main `
98+ - Desplegará los cambios a producción (https://pythoncdmx.org )
99+ - ** Tú NO necesitas hacer este paso** , el equipo lo manejará
84100
85- ## Cambios Realizados
86- - Lista de cambios específicos
101+ ### Conventional Commits (Obligatorio)
87102
88- ## Pruebas
89- - [ ] Pruebas locales ejecutadas
90- - [ ] Documentación actualizada
103+ ** Todos los commits deben seguir el estándar Conventional Commits:**
104+
105+ 📚 ** Documentación oficial** : https://www.conventionalcommits.org/es/v1.0.0/
106+
107+ #### Formato Base
91108
92- ## Capturas de Pantalla (si aplica)
109+ ```
110+ <tipo>[ámbito opcional]: <descripción>
111+
112+ [cuerpo opcional]
113+
114+ [notas al pie opcionales]
115+ ```
116+
117+ #### Tipos Permitidos
118+
119+ - ** feat** : Nueva funcionalidad
120+ - ** fix** : Corrección de bugs
121+ - ** docs** : Cambios en documentación
122+ - ** style** : Cambios de formato (espacios, puntos y comas, etc.)
123+ - ** refactor** : Refactorización de código
124+ - ** test** : Agregar o modificar tests
125+ - ** chore** : Tareas de mantenimiento (dependencias, configuración, etc.)
126+ - ** perf** : Mejoras de performance
127+
128+ #### Ejemplos de Commits Válidos
129+
130+ ``` bash
131+ # Nueva funcionalidad
132+ git commit -m " feat: agregar página de meetup marzo 2025"
133+
134+ # Corrección de bug
135+ git commit -m " fix: corregir enlaces rotos en página de comunidad"
136+
137+ # Documentación
138+ git commit -m " docs: actualizar guía de contribución con flujo staging"
139+
140+ # Estilo/diseño
141+ git commit -m " style: mejorar responsive design en tarjetas de participación"
142+
143+ # Refactorización
144+ git commit -m " refactor: optimizar código de generador de meetups"
145+
146+ # Con ámbito
147+ git commit -m " feat(meetups): agregar filtro por dificultad"
148+
149+ # Con cuerpo descriptivo
150+ git commit -m " feat: agregar sistema de búsqueda de charlas
151+
152+ - Implementar búsqueda por título
153+ - Agregar filtro por ponente
154+ - Incluir índice de palabras clave
155+
156+ Closes #123"
157+ ```
158+
159+ #### ⚠️ Validación Automática
160+
161+ - El repositorio tiene ** commit linting automático**
162+ - Si tus commits no siguen Conventional Commits, el CI ** fallará**
163+ - Asegúrate de formatear correctamente tus mensajes
164+
165+ ### Estructura del PR (Plantilla)
166+
167+ ** Por favor, completa TODA esta información:**
168+
169+ ``` markdown
170+ ## 📝 Descripción
171+ Breve descripción de los cambios realizados
172+
173+ ## 🏷️ Tipo de Cambio
174+ - [ ] 🐛 Bug fix (corrección de errores)
175+ - [ ] ✨ Nueva característica (feature)
176+ - [ ] 📚 Mejora de documentación
177+ - [ ] ♻️ Refactorización
178+ - [ ] 🎨 Cambios de diseño/estilo
179+ - [ ] 📅 Nuevo meetup/evento
180+
181+ ## 🔧 Cambios Realizados
182+ - Lista detallada de cambios específicos
183+ - Incluye archivos modificados si es relevante
184+ - Menciona componentes afectados
185+
186+ ## ✅ Checklist de Verificación
187+ - [ ] He probado los cambios localmente (`mkdocs serve`)
188+ - [ ] Los commits siguen Conventional Commits
189+ - [ ] He actualizado la documentación (si aplica)
190+ - [ ] He probado en modo claro y oscuro
191+ - [ ] He probado en dispositivos móviles
192+ - [ ] Los enlaces funcionan correctamente
193+ - [ ] Las imágenes tienen texto alternativo
194+ - [ ] No hay errores en la consola del navegador
195+
196+ ## 📸 Capturas de Pantalla (si aplica)
197+ Agrega screenshots si hay cambios visuales
198+
199+ ### Antes
200+ [Imagen del estado anterior]
201+
202+ ### Después
203+ [Imagen con los nuevos cambios]
204+
205+ ## 🔗 Issues Relacionados
206+ Closes #[número del issue]
207+ Relates to #[número del issue]
208+
209+ ## 📋 Notas Adicionales
210+ Cualquier información adicional relevante para los revisores
93211```
94212
95213## Estándares de Código
@@ -111,22 +229,12 @@ Breve descripción de los cambios
111229
112230### Git
113231
114- - Commits atómicos: un cambio lógico por commit
115- - Mensajes descriptivos y claros
116- - Ramas descriptivas y relacionadas con el cambio
117-
118- ### Ejemplo de Mensaje de Commit
119-
120- ```
121- feat: agregar página de meetup enero 2025
232+ - ** Commits atómicos** : Un cambio lógico por commit
233+ - ** Conventional Commits obligatorio** : Todos los commits deben seguir el estándar
234+ - ** Mensajes descriptivos** : Usa el formato ` tipo(ámbito): descripción `
235+ - ** Ramas descriptivas** : Nombres relacionados con el cambio (ej: ` feat/nueva-busqueda ` , ` fix/enlaces-rotos ` )
122236
123- - Crear archivo docs/meetups/2025/enero-2025.md
124- - Agregar metadatos del evento
125- - Incluir información del ponente
126- - Actualizar índice de meetups 2025
127-
128- Closes #123
129- ```
237+ Ver la sección [ Conventional Commits] ( #conventional-commits-obligatorio ) para ejemplos detallados.
130238
131239## Agregar Meetups
132240
@@ -185,11 +293,11 @@ mkdocs serve
185293#### 1. Crear Rama de Trabajo
186294
187295``` bash
188- # Actualiza tu main local
189- git checkout main
190- git pull upstream main
296+ # Actualiza tu rama staging local desde upstream
297+ git checkout staging
298+ git pull upstream staging
191299
192- # Crea una nueva rama descriptiva
300+ # Crea una nueva rama descriptiva desde staging
193301git checkout -b feature/nueva-funcionalidad
194302# o
195303git checkout -b fix/corregir-problema
@@ -205,45 +313,62 @@ git checkout -b meetup/agregar-evento-marzo-2025
205313mkdocs serve
206314
207315# Verifica que todo funcione en:
208- # - Modo claro y oscuro
209- # - Móvil y escritorio
210- # - Todos los enlaces
316+ # ✅ Modo claro y oscuro
317+ # ✅ Móvil y escritorio
318+ # ✅ Todos los enlaces funcionan
319+ # ✅ Imágenes se cargan correctamente
320+ # ✅ No hay errores en consola
211321```
212322
213- #### 3. Commit y Push
323+ #### 3. Commit y Push (usando Conventional Commits)
214324
215325``` bash
216326# Añade los cambios
217327git add .
218328
219- # Commit con mensaje descriptivo
329+ # Commit con mensaje siguiendo Conventional Commits
220330git commit -m " feat: agregar meetup marzo 2025 con ponentes confirmados"
221331# o
222332git commit -m " fix: corregir enlaces rotos en página de comunidad"
223333# o
334+ git commit -m " docs: actualizar guía de contribución"
335+ # o
224336git commit -m " style: mejorar responsive design en tarjetas de participación"
225337
226338# Push a tu fork
227339git push origin nombre-de-tu-rama
228340```
229341
230- #### 4. Crear Pull Request
342+ #### 4. Crear Pull Request hacia ` staging `
231343
2323441 . Ve a tu fork en GitHub
2333452 . Click en "Compare & pull request"
234- 3 . ** Título descriptivo** : Ej. "Agregar meetup marzo 2025 - IA en producción"
235- 4 . ** Descripción detallada** :
236- - Qué cambios realizaste
237- - Por qué son necesarios
346+ 3 . ** ⚠️ IMPORTANTE** : Asegúrate que el PR apunte a ` staging ` (NO a ` main ` )
347+ 4 . ** Título descriptivo** : Sigue Conventional Commits en el título
348+ - Ejemplo: ` feat: agregar meetup marzo 2025 - IA en producción `
349+ 5 . ** Completa el formulario del PR** con TODA la información:
350+ - Descripción de cambios
351+ - Tipo de cambio (checkbox)
352+ - Lista de cambios realizados
353+ - Checklist de verificación completada
238354 - Screenshots si hay cambios visuales
239- - Checklist de verificación
240- 5 . Etiqueta apropiada: ` meetup ` , ` enhancement ` , ` bug ` , etc.
355+ - Issues relacionados
356+ 6 . Etiqueta apropiada: ` meetup ` , ` enhancement ` , ` bug ` , ` documentation ` , etc.
241357
242- #### 5. Revisión y Merge
358+ #### 5. Revisión en Staging
243359
244360- El equipo revisará tu PR
245361- Responde a comentarios si los hay
246- - Una vez aprobado, será merged al proyecto principal
362+ - Una vez aprobado, se hará ** merge a ` staging ` **
363+ - El sitio se desplegará automáticamente en ** https://staging.pythoncdmx.org **
364+ - Podrás ver tus cambios en línea y validarlos
365+
366+ #### 6. Promoción a Producción (Automático)
367+
368+ - Si todo está correcto en staging, el equipo core:
369+ - Creará un PR de ` staging ` → ` main `
370+ - Tus cambios se desplegarán a producción
371+ - ** No necesitas hacer nada más** , el equipo manejará este paso
247372
248373### Comandos Útiles
249374
0 commit comments