workspace-v1/orchestration/templates/TEMPLATE-TAREA-TECNICA.md
rckrdmrd 66161b1566 feat: Workspace-v1 complete migration with NEXUS v3.4
Sistema NEXUS v3.4 migrado con:

Estructura principal:
- core/orchestration: Sistema SIMCO + CAPVED (27 directivas, 28 perfiles)
- core/catalog: Catalogo de funcionalidades reutilizables
- shared/knowledge-base: Base de conocimiento compartida
- devtools/scripts: Herramientas de desarrollo
- control-plane/registries: Control de servicios y CI/CD
- orchestration/: Configuracion de orquestacion de agentes

Proyectos incluidos (11):
- gamilit (submodule -> GitHub)
- trading-platform (OrbiquanTIA)
- erp-suite con 5 verticales:
  - erp-core, construccion, vidrio-templado
  - mecanicas-diesel, retail, clinicas
- betting-analytics
- inmobiliaria-analytics
- platform_marketing_content
- pos-micro, erp-basico

Configuracion:
- .gitignore completo para Node.js/Python/Docker
- gamilit como submodule (git@github.com:rckrdmrd/gamilit-workspace.git)
- Sistema de puertos estandarizado (3005-3199)

Generated with NEXUS v3.4 Migration System
EPIC-010: Configuracion Git y Repositorios
2026-01-04 03:37:42 -06:00

211 lines
4.3 KiB
Markdown

# TEMPLATE: TAREA TÉCNICA
**Versión:** 1.1.0
**Fecha:** 2025-12-08
**Uso:** Definición de tareas técnicas atómicas
---
## 🆕 VERIFICACIÓN DE CATÁLOGO (ANTES DE CREAR TAREA)
> **OBLIGATORIO verificar si la funcionalidad ya existe en el catálogo global:**
```bash
grep -i "{funcionalidad}" core/catalog/CATALOG-INDEX.yml
```
**Si existe:** Usar `@REUTILIZAR` en lugar de crear desde cero.
**Funcionalidades catalogadas:** auth, session, rate-limiting, notifications, multi-tenancy, feature-flags, websocket, payments
---
## {GRUPO}-{NNN}: {Título de la Tarea}
### Metadata
| Campo | Valor |
|-------|-------|
| **ID** | {DB/BE/FE/TEST}-{NNN} |
| **Tipo** | {Database / Backend / Frontend / Testing / DevOps} |
| **Historia** | US-{MOD}-{NNN} |
| **Épica** | {EPIC-ID} |
| **Prioridad** | {P0 / P1 / P2 / P3} |
| **Estimación** | {horas} |
| **Estado** | {Backlog / In Progress / Review / Done / Blocked} |
| **Asignado a** | {NEXUS-DATABASE / NEXUS-BACKEND / NEXUS-FRONTEND} |
---
### Descripción
{Descripción clara y concisa de lo que debe hacer esta tarea}
### Objetivo
{Qué se logra al completar esta tarea}
---
### Especificación Técnica
#### Para Database (DB-XXX):
**Schema:** `{schema_name}`
**Objeto a crear/modificar:**
```sql
-- Tipo: {TABLE / FUNCTION / TRIGGER / INDEX / VIEW}
-- Archivo: apps/{proyecto}/database/ddl/schemas/{schema}/{tipo}/{archivo}.sql
{Especificación SQL o pseudocódigo}
```
**Columnas (si es tabla):**
| Columna | Tipo | Nullable | Default | Descripción |
|---------|------|----------|---------|-------------|
| id | UUID | NO | gen_random_uuid() | PK |
| {col} | {tipo} | {YES/NO} | {default} | {descripción} |
**Índices requeridos:**
- `idx_{tabla}_{columna}`: {propósito}
**RLS Policy:**
```sql
CREATE POLICY {policy_name} ON {schema}.{tabla}
USING ({condición});
```
---
#### Para Backend (BE-XXX):
**Módulo:** `apps/{proyecto}/backend/src/modules/{modulo}/`
**Archivo a crear/modificar:**
- `{archivo}.ts`
**Tipo de artefacto:** {Entity / DTO / Service / Controller / Middleware}
**Especificación:**
```typescript
// Estructura esperada
{código o pseudocódigo}
```
**Endpoints (si es Controller):**
| Método | Ruta | Descripción |
|--------|------|-------------|
| GET | /api/{resource} | {descripción} |
**Validaciones requeridas:**
- {validación 1}
- {validación 2}
---
#### Para Frontend (FE-XXX):
**Ubicación:** `apps/{proyecto}/frontend/src/{tipo}/{archivo}.tsx`
**Tipo de artefacto:** {Page / Component / Store / Hook / Service}
**Props/Interface:**
```typescript
interface {Name}Props {
{prop}: {tipo};
}
```
**Comportamiento esperado:**
- {comportamiento 1}
- {comportamiento 2}
**Estados:**
- Loading: {descripción}
- Error: {descripción}
- Success: {descripción}
---
### Criterios de Aceptación Técnicos
- [ ] {Criterio 1}
- [ ] {Criterio 2}
- [ ] {Criterio 3}
### Validación
**Comandos de validación:**
```bash
# Database
psql -d {db} -c "SELECT * FROM {schema}.{tabla} LIMIT 1;"
# Backend
npm run build
npm run test -- --grep "{pattern}"
# Frontend
npm run build
npm run test -- --grep "{pattern}"
```
**Resultado esperado:**
- {resultado esperado}
---
### Dependencias
**Requiere completadas:**
- [ ] {GRUPO}-{NNN}: {descripción}
**Bloquea:**
- [ ] {GRUPO}-{NNN}: {descripción}
---
### Archivos a Crear/Modificar
**Crear:**
- `{ruta/archivo}` - {descripción}
**Modificar:**
- `{ruta/archivo}` - {cambios}
---
### Definition of Done
- [ ] 🆕 Verificó @CATALOG antes de implementar
- [ ] 🆕 Si usó catálogo: siguió SIMCO-REUTILIZAR.md
- [ ] Código implementado
- [ ] Compilación sin errores
- [ ] Tests pasando
- [ ] Comentarios/documentación agregados
- [ ] Code review (si aplica)
- [ ] Inventario actualizado
- [ ] Traza registrada
---
### Notas
{Consideraciones especiales, decisiones técnicas, referencias}
---
### Log de Ejecución
| Fecha/Hora | Acción | Resultado |
|------------|--------|-----------|
| {timestamp} | Inicio | - |
| {timestamp} | {acción} | {resultado} |
| {timestamp} | Fin | {PASS/FAIL} |
---
**Asignada por:** {nombre-agente}
**Fecha asignación:** {YYYY-MM-DD}
**Fecha completada:** {YYYY-MM-DD}
**Duración real:** {horas}