05. Branching Strategy
Fase: 02 — Project Kickoff
Entregable: 05
Proyecto: NoteVault (PC, Mac, Android, iPhone)
1. Estrategia de Ramificación en Git
NoteVault implementa una estrategia Trunk-Based Development simplificada:
- Rama Principal (
main): Siempre estable, compilable y lista para producción. - Ramas de Características (
feat/<modulo>-<descripcion>): Ramas de corta duración (1 a 3 días) que nacen demainy se reintegran mediante Pull Request con validación previa de CI. - Ramas de Corrección (
fix/<bug-nombre>): Correcciones urgentes con prueba unitaria que reproduce el fallo. - Políticas de Fusión: Requiere aprobación de pruebas unitarias (
npx vitest run/flutter test) y verificación estricta de tipos (tsc -b).
2. Marco Conceptual: Política de Ramificación Git
1. **Entidad principal e independiente.**
2. **Es la entidad líder del conjunto de datos:** posee un identificador global único que formaliza la convención de control de versiones (`branching_policy_id`: `GIT-TRUNK-BASED-STRICT`) consultado en los hooks de pre-push.
3. **Existe por sí misma en las directivas de ingeniería sin depender del proveedor de hosting Git**, y es la única responsable de impedir fusiones rotas o ramas divergentes de larga duración.
4. **Punto de entrada y límite de consistencia:** Bloquea merges directos a `main` sin validación previa.