Protocolo de Desarrollo Pristinoplant
Este documento define las directrices, convenciones y flujos de trabajo ESTRICTOS para el desarrollo del proyecto "Pristinoplant".
Cuándo Usar esta Habilidad
- •Inicio de Sesión: Al comenzar a trabajar para cargar el contexto y reglas.
- •Antes de Commits: Para validar el formato de mensajes y el flujo de
commit.txt. - •Dudas de Proceso: Cuando no estés seguro de qué rama usar o cómo sincronizar.
- •Configuración: Para consultar comandos específicos (
pnpm,prisma,docker).
Prerrequisitos
- •Acceso al repositorio y herramientas de línea de comandos (git, pnpm).
Flujo de Trabajo
Paso 1: Principios Nucleares
- •Idioma: Todo en Español.
- •Usuario: Perfil de aprendizaje. Explicaciones claras.
- •Archivos de Chat: Usar
.txtpara archivos efímeros (context.txt, commit.txt). - •Artefactos: Todos los documentos generados (
walkthrough.md,implementation_plan.md,task.md, etc.) y el razonamiento deben estar en Español.
Paso 2: Flujo de Trabajo de Commits (Estricto)
- •Verificar
commit.txt:- •Usar
Get-Content commit.txt(PowerShell) ocatpara leerlo si está ignorado.
- •Usar
- •Acción:
- •Existe: Leer y ANEXAR.
- •No existe: Crear.
- •Aprobación: Esperar confirmación del usuario.
- •Ejecución:
- •Leer contenido final.
- •
git commit -m "...". - •Eliminar
commit.txt.
Paso 3: Estándares de Mensaje
Formato: [Emoji] [tipo] ([área]): [Título Conciso]
| Tipo | Emoji | Descripción |
|---|---|---|
| feat | ✨ | Nueva funcionalidad |
| fix | 🔥 | Corrección de errores |
| bug | 🐞 | Error conocido |
| refactor | ♻️ | Cambio de código (no funcional) |
| docs | 📚 | Documentación |
| style | 💅 | Formato |
| test | 🧪 | Pruebas |
| perf | ⚡️ | Rendimiento |
| chore | ⚙️ | Mantenimiento/Config |
| build | 📦 | Build/Deps |
| ci | 🚀 | CI |
| revert | ⏪ | Revertir |
Paso 4: Sincronización de Ramas
- •Trabajo en rama
Dev. - •Commit en
Dev. - •Push
Dev. - •Checkout
main-> Pullmain-> MergeDev-> Pushmain. - •Checkout
Dev.
Paso 5: Estándares de Código
- •Importaciones (
@/):- •Para todas las carpetas directas dentro de
src(ej.components,interfaces,store,lib, etc.), importar SIEMPRE desde el primer nivel (archivo barrilindex.ts). - •❌ Incorrecto:
import { Button } from '@/components/ui/Button' - •✅ Correcto:
import { Button } from '@/components' - •Esto asegura encapsulamiento y facilita refactorizaciones.
- •Para todas las carpetas directas dentro de
Comandos Específicos
- •Linting:
pnpm lint(en carpetaapp). - •Reset DB:
prisma migrate reset --force(tras setear consent env var).
Recursos
- •
context.txt: Contexto general del proyecto. - •
package.json: Scripts oficiales.