sdd-es 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/.claude/settings.json +51 -0
  2. package/.claude-plugin/marketplace.json +31 -0
  3. package/.claude-plugin/plugin.json +97 -0
  4. package/README.md +332 -0
  5. package/agents/arquitecto.md +148 -0
  6. package/agents/asesor-datos.md +163 -0
  7. package/agents/critico.md +142 -0
  8. package/agents/desarrollador-backend.md +242 -0
  9. package/agents/desarrollador-frontend.md +120 -0
  10. package/agents/disenador-api.md +108 -0
  11. package/agents/documentador.md +177 -0
  12. package/agents/investigador.md +174 -0
  13. package/agents/operaciones.md +105 -0
  14. package/agents/revisor.md +153 -0
  15. package/agents/seguridad.md +216 -0
  16. package/agents/tester.md +286 -0
  17. package/claude-hooks/post-write-conventions.js +412 -0
  18. package/claude-hooks/pre-tool-guard.js +159 -0
  19. package/cli/index.js +401 -0
  20. package/commands/sdd.aclarar.md +200 -0
  21. package/commands/sdd.analizar.md +241 -0
  22. package/commands/sdd.ayuda.md +227 -0
  23. package/commands/sdd.canary.md +60 -0
  24. package/commands/sdd.checklist.md +174 -0
  25. package/commands/sdd.comprimir.md +166 -0
  26. package/commands/sdd.configurar.md +195 -0
  27. package/commands/sdd.constitucion.md +343 -0
  28. package/commands/sdd.crear-app.md +168 -0
  29. package/commands/sdd.crear-mcp.md +174 -0
  30. package/commands/sdd.descubrir.md +269 -0
  31. package/commands/sdd.desplegar.md +155 -0
  32. package/commands/sdd.especificar.md +302 -0
  33. package/commands/sdd.estado.md +124 -0
  34. package/commands/sdd.glosario.md +108 -0
  35. package/commands/sdd.implementar.md +377 -0
  36. package/commands/sdd.importar.md +91 -0
  37. package/commands/sdd.mapear.md +120 -0
  38. package/commands/sdd.md +119 -0
  39. package/commands/sdd.planificar.md +372 -0
  40. package/commands/sdd.qa.md +108 -0
  41. package/commands/sdd.release.md +253 -0
  42. package/commands/sdd.retro.md +82 -0
  43. package/commands/sdd.snapshot.md +122 -0
  44. package/commands/sdd.tareas.md +300 -0
  45. package/commands/sdd.verificar.md +239 -0
  46. package/configuracion-ejemplo/hooks-ejemplo/antes_cada_tarea.sh +18 -0
  47. package/configuracion-ejemplo/hooks-ejemplo/antes_implementar.sh +45 -0
  48. package/configuracion-ejemplo/hooks-ejemplo/despues_especificar.sh +14 -0
  49. package/configuracion-ejemplo/hooks-ejemplo/despues_implementar.sh +36 -0
  50. package/configuracion-ejemplo/hooks-ejemplo/despues_planificar.sh +19 -0
  51. package/configuracion-ejemplo/hooks-ejemplo/guardia-seguridad.sh +367 -0
  52. package/configuracion-ejemplo/sdd.config.yaml +310 -0
  53. package/docs/AGENTES.md +74 -0
  54. package/docs/COMPRESION.md +155 -0
  55. package/docs/EJEMPLO-PRACTICA.md +383 -0
  56. package/docs/EJEMPLOS.md +212 -0
  57. package/docs/FABRICA.md +185 -0
  58. package/docs/FILOSOFIA.md +61 -0
  59. package/docs/FLUJO.md +149 -0
  60. package/docs/INICIO-RAPIDO.md +116 -0
  61. package/docs/MAPAS.md +113 -0
  62. package/docs/MODELOS.md +103 -0
  63. package/docs/PERSONALIZACION.md +152 -0
  64. package/instalar.ps1 +39 -0
  65. package/instalar.sh +22 -0
  66. package/mcp-figma/README.md +158 -0
  67. package/mcp-figma/package.json +7 -0
  68. package/mcp-figma/src/component-generator.js +162 -0
  69. package/mcp-figma/src/design-system-analyzer.js +247 -0
  70. package/mcp-figma/src/figma-client.js +75 -0
  71. package/mcp-figma/src/index.js +114 -0
  72. package/mcp-figma/src/mcp.js +97 -0
  73. package/mcp-figma/src/style-mapper.js +85 -0
  74. package/package.json +50 -0
  75. package/plantillas/analisis.md +57 -0
  76. package/plantillas/checklist-especificacion.md +66 -0
  77. package/plantillas/constitucion.md +104 -0
  78. package/plantillas/decision-arquitectura.md +39 -0
  79. package/plantillas/dependencias-mapa.md +89 -0
  80. package/plantillas/especificacion.md +108 -0
  81. package/plantillas/estructura-mapa.md +40 -0
  82. package/plantillas/glosario.md +22 -0
  83. package/plantillas/index-especificaciones.md +15 -0
  84. package/plantillas/mcp-server.md +147 -0
  85. package/plantillas/plan.md +152 -0
  86. package/plantillas/simbolos-mapa.md +57 -0
  87. package/plantillas/snapshot.md +54 -0
  88. package/plantillas/tareas.md +72 -0
  89. package/presets/enterprise.yaml +69 -0
  90. package/presets/lean.yaml +63 -0
  91. package/presets/startup.yaml +67 -0
  92. package/skills/compresion-tokens.md +264 -0
  93. package/skills/constitucion-constraint.md +78 -0
  94. package/skills/deteccion-stack.md +175 -0
  95. package/skills/enrutador-agentes.md +69 -0
  96. package/skills/gestion-estado.md +114 -0
  97. package/skills/indexador.md +199 -0
  98. package/skills/modo-guiado/SKILL.md +78 -0
  99. package/skills/orquestacion-ptc/SKILL.md +96 -0
  100. package/skills/validacion-spec.md +52 -0
  101. package/skills/verificador-implementacion.md +71 -0
@@ -0,0 +1,40 @@
1
+ ---
2
+ generado_por: /sdd.mapear
3
+ fecha: [FECHA]
4
+ proyecto: [NOMBRE_PROYECTO]
5
+ ---
6
+
7
+ # Mapa de Estructura del Proyecto
8
+
9
+ Árbol de directorios con descripción de cada archivo. Generado automáticamente por `/sdd.mapear`.
10
+
11
+ ## Estructura
12
+
13
+ [ÁRBOL AQUÍ]
14
+
15
+ ## Cómo se generó
16
+
17
+ - Comando: `/sdd.mapear`
18
+ - Lenguajes detectados: [LISTA]
19
+ - Archivos indexados: [N]
20
+ - Última actualización: [FECHA Y HORA]
21
+
22
+ ## Editabilidad
23
+
24
+ Este archivo se regenera con `/sdd.mapear`. Para editar descripciones:
25
+
26
+ 1. Edita la descripción directamente en este archivo
27
+ 2. La próxima ejecución de `/sdd.mapear` respetará tus cambios
28
+ 3. Backup automático en `estructura-mapa.md.backup`
29
+
30
+ ## Para ignorar directorios
31
+
32
+ Edita `.sdd/.mapeoignore` (sintaxis como `.gitignore`):
33
+
34
+ ```
35
+ node_modules/
36
+ dist/
37
+ .git/
38
+ vendor/
39
+ __pycache__/
40
+ ```
@@ -0,0 +1,22 @@
1
+ # Glosario del Dominio
2
+
3
+ > Términos del dominio del proyecto. Una definición precisa por término.
4
+ > Editar con: `/sdd.glosario`
5
+
6
+ ## Términos
7
+
8
+ ### [Término]
9
+
10
+ **Definición:** [una frase precisa]
11
+ **Categoría:** [negocio | técnico | usuario | proceso]
12
+ **Sinónimos a evitar:**
13
+ - ~~[sinónimo]~~ (usar "[Término]")
14
+
15
+ **Ejemplos:**
16
+ - [ejemplo 1]
17
+ - [ejemplo 2]
18
+
19
+ **Referenciado en:**
20
+ - [SPEC_ID_1], [SPEC_ID_2]
21
+
22
+ **Última actualización:** [FECHA]
@@ -0,0 +1,15 @@
1
+ # Índice de Especificaciones
2
+
3
+ > Registro de todas las especificaciones del proyecto, ordenado cronológicamente.
4
+
5
+ ## Estadísticas
6
+ - Total: [N]
7
+ - Completadas: [N]
8
+ - En progreso: [N]
9
+ - En borrador: [N]
10
+
11
+ ## Especificaciones
12
+
13
+ | ID | Título | Estado | Tamaño | Spec | Plan | Tareas | Verif | Fecha |
14
+ |----|--------|--------|--------|------|------|--------|-------|-------|
15
+ | [SPEC_ID] | [título] | [estado] | [tam] | ✅ | ✅ | ✅ | ✅ | [fecha] |
@@ -0,0 +1,147 @@
1
+ # Plantilla: Servidor MCP
2
+
3
+ Esqueleto base para el generador `/sdd.crear-mcp`. El agente `desarrollador-backend` rellena los `TODO` con el código real de cada tool.
4
+
5
+ ---
6
+
7
+ ## `package.json`
8
+
9
+ ```json
10
+ {
11
+ "name": "mcp-NOMBRE",
12
+ "version": "1.0.0",
13
+ "description": "DESCRIPCION_UNA_LINEA",
14
+ "type": "module",
15
+ "bin": {
16
+ "mcp-NOMBRE": "./src/index.js"
17
+ },
18
+ "scripts": {
19
+ "start": "node src/index.js",
20
+ "test": "node --test tests/*.test.js"
21
+ },
22
+ "dependencies": {
23
+ "@modelcontextprotocol/sdk": "^1.0.0",
24
+ "zod": "^3.22.0"
25
+ },
26
+ "engines": {
27
+ "node": ">=18.0.0"
28
+ }
29
+ }
30
+ ```
31
+
32
+ ---
33
+
34
+ ## `src/index.js`
35
+
36
+ ```javascript
37
+ #!/usr/bin/env node
38
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
39
+ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
40
+ import { z } from "zod";
41
+
42
+ const server = new McpServer({
43
+ name: "mcp-NOMBRE",
44
+ version: "1.0.0",
45
+ });
46
+
47
+ // ── TOOL 1 ──────────────────────────────────────────────────────────────────
48
+ // TODO: reemplazar con la tool real (una por CA)
49
+ server.tool(
50
+ "nombre_tool_1",
51
+ "Descripción para el modelo: cuándo usar esta tool y qué hace",
52
+ {
53
+ // Parámetros de entrada (Zod schema)
54
+ entrada: z.string().describe("qué es este parámetro")
55
+ },
56
+ async ({ entrada }) => {
57
+ // TODO: lógica de la tool
58
+ const resultado = `procesado: ${entrada}`;
59
+ return {
60
+ content: [{ type: "text", text: resultado }]
61
+ };
62
+ }
63
+ );
64
+
65
+ // ── TOOL 2 (copiar bloque de arriba por cada CA adicional) ──────────────────
66
+ // server.tool("nombre_tool_2", ...)
67
+
68
+ // ── ARRANQUE ─────────────────────────────────────────────────────────────────
69
+ const transport = new StdioServerTransport();
70
+ await server.connect(transport);
71
+ // El servidor queda escuchando por stdin — no imprimir nada a stdout aquí
72
+ ```
73
+
74
+ ---
75
+
76
+ ## `.env.example`
77
+
78
+ ```bash
79
+ # Variables de entorno requeridas por este MCP
80
+ # Copia este archivo como .env y rellena los valores
81
+
82
+ # TODO: añadir las variables que necesite la tool (API keys, rutas, etc.)
83
+ # EJEMPLO_API_KEY=tu_clave_aqui
84
+ # EJEMPLO_BASE_URL=https://api.ejemplo.com
85
+ ```
86
+
87
+ ---
88
+
89
+ ## `README.md` (estructura que genera `/sdd.crear-mcp`)
90
+
91
+ ```markdown
92
+ # mcp-NOMBRE
93
+
94
+ DESCRIPCION_UNA_LINEA
95
+
96
+ ## Qué hace
97
+
98
+ | Tool | Qué hace | Parámetros |
99
+ |------|----------|-----------|
100
+ | nombre_tool_1 | [descripción] | `entrada` (texto) |
101
+
102
+ ## Instalación en Claude Code
103
+
104
+ 1. Clona o descarga este proyecto.
105
+ 2. Ejecuta en tu terminal:
106
+
107
+ ```
108
+ claude mcp add NOMBRE -- node "/ruta/a/mcp-NOMBRE/src/index.js"
109
+ ```
110
+
111
+ 3. Reinicia Claude Code.
112
+
113
+ ## Variables de entorno
114
+
115
+ Copia `.env.example` como `.env` y rellena los valores antes de instalar.
116
+
117
+ ## Uso
118
+
119
+ Dile a Claude: "[ejemplo de frase en lenguaje natural que activa la tool]"
120
+
121
+ ## Requisitos
122
+
123
+ - Node.js 18 o superior
124
+ - Claude Code
125
+ ```
126
+
127
+ ---
128
+
129
+ ## `tests/mcp.test.js` (estructura base)
130
+
131
+ ```javascript
132
+ import { test } from "node:test";
133
+ import assert from "node:assert/strict";
134
+
135
+ // Prueba de integración mínima: el módulo carga sin errores de sintaxis
136
+ test("src/index.js carga sin errores", async () => {
137
+ // Verificar que el archivo existe y tiene contenido
138
+ const { readFileSync } = await import("node:fs");
139
+ const src = readFileSync("src/index.js", "utf8");
140
+ assert.ok(src.includes("McpServer"), "debe importar McpServer");
141
+ assert.ok(src.includes("server.tool("), "debe declarar al menos una tool");
142
+ assert.ok(src.includes("StdioServerTransport"), "debe usar stdio transport");
143
+ });
144
+
145
+ // TODO: añadir un test por tool que simule la entrada y verifique la salida
146
+ // test("nombre_tool_1: procesa entrada correctamente", async () => { ... })
147
+ ```
@@ -0,0 +1,152 @@
1
+ ---
2
+ spec_id: [SPEC_ID]
3
+ plan_id: [SPEC_ID]-plan
4
+ estado: pendiente_aprobacion # pendiente_aprobacion | aprobado | obsoleto
5
+ creado: [FECHA]
6
+ constitucion_version: [X.Y.Z]
7
+ agentes_participantes: []
8
+ ---
9
+
10
+ # Plan Técnico: [TITULO_SPEC]
11
+
12
+ ## 1. Resumen Ejecutivo
13
+
14
+ [3-5 frases. Qué se va a construir técnicamente, con qué tecnología, en qué archivos principales.]
15
+
16
+ ## 2. Verificación de Constitución (Constitution Check)
17
+
18
+ | Principio | Cumple | Justificación |
19
+ |-----------|--------|--------------|
20
+ | Principio I | ✅/❌/⚠️ | [explicación] |
21
+ | Principio II | ✅ | [explicación] |
22
+
23
+ > Si hay ❌ o ⚠️: documentar en sección "Complejidad Justificada" o detener el plan.
24
+
25
+ ## 3. Enfoque Técnico
26
+
27
+ [2-4 párrafos del enfoque elegido y por qué.]
28
+
29
+ ## 4. Decisiones Técnicas
30
+
31
+ | # | Decisión | Opción elegida | Alternativas descartadas | Razón |
32
+ |---|----------|---------------|--------------------------|-------|
33
+ | 1 | [decisión] | [opción] | [otras] | [razón concreta] |
34
+
35
+ > Decisiones no triviales también se documentan como ADR en `.sdd/arquitectura/`.
36
+
37
+ ## 5. Estructura de Carpetas Afectada
38
+
39
+ ```
40
+ [Diagrama de árbol mostrando dónde van los archivos nuevos]
41
+ ```
42
+
43
+ ## 6. Archivos Afectados
44
+
45
+ | Acción | Ruta | Propósito | Agente responsable |
46
+ |--------|------|-----------|--------------------|
47
+ | CREAR | `ruta/archivo.ext` | [qué hace] | desarrollador-backend |
48
+ | MODIFICAR | `ruta/existente.ext` | [qué cambia] | desarrollador-backend |
49
+ | ELIMINAR | `ruta/obsoleto.ext` | [por qué] | — |
50
+
51
+ ## 7. Modelo de Datos
52
+
53
+ ### Entidades nuevas
54
+ ```[lenguaje]
55
+ // Tipos / interfaces / schemas
56
+ ```
57
+
58
+ ### Cambios en entidades existentes
59
+ [Migraciones requeridas]
60
+
61
+ ### Queries críticas
62
+ [SQL/NoSQL queries importantes con justificación de índices]
63
+
64
+ ## 8. Contratos de API
65
+
66
+ ### Endpoints / Operaciones nuevas
67
+ ```yaml
68
+ # OpenAPI / GraphQL schema / proto / etc
69
+ ```
70
+
71
+ ### Cambios en endpoints existentes
72
+ [Breaking? Si sí, plan de migración]
73
+
74
+ ### Eventos / Mensajes (si aplica)
75
+ [Topics, formatos, idempotencia]
76
+
77
+ ## 9. Estrategia de Tests
78
+
79
+ ### Tests unitarios
80
+ - Qué unidades se testean
81
+ - Mocks necesarios
82
+
83
+ ### Tests de integración
84
+ - Qué integraciones se prueban
85
+
86
+ ### Tests E2E (si aplica)
87
+ - Flujos críticos a cubrir
88
+
89
+ ## 10. Dependencias Nuevas
90
+
91
+ | Paquete | Versión | Justificación | Alternativas |
92
+ |---------|---------|--------------|-------------|
93
+ | [paquete] | [versión] | [por qué] | [otras] |
94
+
95
+ ## 11. Riesgos Técnicos
96
+
97
+ | # | Riesgo | Probabilidad | Impacto | Mitigación |
98
+ |---|--------|--------------|---------|-----------|
99
+ | 1 | [riesgo] | A/M/B | A/M/B | [acción] |
100
+
101
+ ## 12. Plan de Implementación en Fases
102
+
103
+ ### Fase A: Fundamentos
104
+ [Tipos, interfaces, schemas, migraciones]
105
+
106
+ ### Fase B: Tests primero (si TDD)
107
+
108
+ ### Fase C: Capa de datos
109
+
110
+ ### Fase D: Lógica de negocio
111
+
112
+ ### Fase E: Interfaz / API
113
+
114
+ ### Fase F: UI (si aplica)
115
+
116
+ ### Fase G: Integración
117
+
118
+ ### Fase H: Verificación
119
+
120
+ ## 13. Cambios Breaking
121
+
122
+ [Lista de cambios que rompen compatibilidad. Vacío si ninguno.]
123
+
124
+ ## 14. Métricas y Observabilidad
125
+
126
+ [Qué loguear / métricas a exponer / alarmas]
127
+
128
+ ## 15. Complejidad Justificada
129
+
130
+ [Solo si hay desviaciones de la constitución que se justifican.]
131
+
132
+ ## 16. Estimación
133
+
134
+ - Complejidad global: [Baja / Media / Alta]
135
+ - Tareas estimadas: [N]
136
+
137
+ ## 17. Aportes por Agente
138
+
139
+ ### Arquitecto
140
+ [Decisiones de alto nivel]
141
+
142
+ ### Diseñador de API
143
+ [Diseño de contratos]
144
+
145
+ ### Asesor de datos
146
+ [Decisiones de BD]
147
+
148
+ ### Crítico
149
+ [Riesgos identificados]
150
+
151
+ ### Seguridad
152
+ [Consideraciones]
@@ -0,0 +1,57 @@
1
+ ---
2
+ generado_por: /sdd.mapear
3
+ fecha: [FECHA]
4
+ proyecto: [NOMBRE_PROYECTO]
5
+ ---
6
+
7
+ # Mapa de Símbolos Públicos
8
+
9
+ Funciones, clases, tipos e interfaces exportadas por cada archivo.
10
+
11
+ Generado automáticamente por `/sdd.mapear`.
12
+
13
+ ## Convención
14
+
15
+ - **fn** = función
16
+ - **class** = clase
17
+ - **type** = tipo TypeScript
18
+ - **interface** = interfaz TypeScript
19
+ - **enum** = enumeración
20
+ - **const** = constante exportada
21
+
22
+ ## Archivos
23
+
24
+ [SÍMBOLOS POR ARCHIVO AQUÍ]
25
+
26
+ Ejemplo:
27
+
28
+ ```markdown
29
+ ## src/auth/login.service.ts
30
+
31
+ - **fn** autenticarUsuario(email: string, password: string): Promise<Session>
32
+ Autentica usuario con email y password. Lanza InvalidCredentialsError si fallan.
33
+
34
+ - **fn** cerrarSesion(sessionId: string): Promise<void>
35
+ Cierra sesión borrando el token.
36
+
37
+ - **type** AuthResult
38
+ ```typescript
39
+ { session: Session, user: User }
40
+ ```
41
+
42
+ ## src/users/user.service.ts
43
+
44
+ - **fn** crearUsuario(datos: CreateUserDTO): Promise<User>
45
+ Crea nuevo usuario. Valida email único.
46
+
47
+ - **fn** obtenerPorId(id: string): Promise<User>
48
+ Obtiene usuario por ID. Lanza UserNotFoundError si no existe.
49
+ ```
50
+
51
+ ## Cómo usarlo
52
+
53
+ Durante `/sdd.implementar`, antes de modificar archivo X:
54
+
55
+ 1. Claude consulta este mapa: ¿qué exporta X?
56
+ 2. Si necesita más detalle, lee el archivo
57
+ 3. Típicamente el mapa le alcanza
@@ -0,0 +1,54 @@
1
+ # SNAPSHOT del Producto: [NOMBRE_PROYECTO]
2
+
3
+ > Última actualización: [FECHA]
4
+ > Versión de constitución: v[X.Y.Z]
5
+ > Última spec aplicada: [SPEC_ID]
6
+
7
+ ## ¿Qué es este producto?
8
+
9
+ [2-4 frases ejecutivas]
10
+
11
+ ## ¿Para quién?
12
+
13
+ [Actores/usuarios con su necesidad]
14
+
15
+ ## Funcionalidades Activas
16
+
17
+ ### [Categoría 1]
18
+ - ✅ **[Funcionalidad]** — [descripción]. *Spec: [ID]*
19
+
20
+ ### [Categoría 2]
21
+ - ✅ **[...]**
22
+
23
+ ## Arquitectura de Alto Nivel
24
+
25
+ ```
26
+ ┌────────┐ ┌────────┐ ┌──────┐
27
+ │Frontend│───>│Backend │───>│ BD │
28
+ └────────┘ └────────┘ └──────┘
29
+ ```
30
+
31
+ ## Integraciones
32
+
33
+ | Sistema | Propósito | Estado |
34
+ |---------|-----------|--------|
35
+
36
+ ## Datos manejados
37
+
38
+ [Tipos de datos principales]
39
+
40
+ ## Términos del dominio (resumen)
41
+ > Glosario completo: `.sdd/dominio/glosario.md`
42
+
43
+ ## Especificaciones aplicadas (últimas 10)
44
+
45
+ | ID | Título | Fecha |
46
+ |----|--------|-------|
47
+
48
+ ## Roadmap
49
+
50
+ [Specs en borrador o pendientes]
51
+
52
+ ## Métricas del producto
53
+
54
+ [Si la constitución establece métricas]
@@ -0,0 +1,72 @@
1
+ ---
2
+ spec_id: [SPEC_ID]
3
+ total_tareas: 0
4
+ estado: pendiente
5
+ generado: [FECHA]
6
+ ---
7
+
8
+ # Tareas: [TITULO_SPEC]
9
+
10
+ ## Progreso
11
+
12
+ ```
13
+ [░░░░░░░░░░░░░░░░░░░░] 0% (0/[N])
14
+ ```
15
+
16
+ | Total | Pendientes | En progreso | Completadas | Bloqueadas |
17
+ |-------|------------|-------------|-------------|------------|
18
+ | [N] | [N] | 0 | 0 | 0 |
19
+
20
+ ## Leyenda de estados
21
+ - ⬜ pendiente
22
+ - 🔧 en_progreso
23
+ - ✅ completada
24
+ - ❌ bloqueada
25
+ - ⏭️ omitida
26
+
27
+ ---
28
+
29
+ ## T001 — [Nombre descriptivo]
30
+
31
+ **Fase:** A (Fundamentos)
32
+ **Agente:** [agente]
33
+ **Modelo:** [modelo] (según config)
34
+ **Archivos:** `ruta/nuevo.ext` (CREAR)
35
+ **Depende de:** —
36
+ **Estado:** ⬜ pendiente
37
+ **Tiempo estimado:** S/M/L
38
+
39
+ ### Qué hacer
40
+ [Descripción específica e inequívoca]
41
+
42
+ ### Contexto
43
+ - CA cubierto: CA-001-01
44
+ - Decisión técnica: #1 del plan
45
+
46
+ ### Criterio de verificación
47
+ ```bash
48
+ [comando o assertion concreta]
49
+ ```
50
+
51
+ ### Notas
52
+ [Patrones a seguir, decisiones tomadas]
53
+
54
+ ---
55
+
56
+ ## Matriz de Cobertura de CAs
57
+
58
+ | CA | Tareas que lo cubren |
59
+ |----|----------------------|
60
+ | CA-001-01 | T001, T003 |
61
+
62
+ ## Diagrama de Dependencias
63
+
64
+ ```
65
+ T001 ──> T003 ──> T005
66
+ T002 ──> T004
67
+ ```
68
+
69
+ ## Historial de Cambios
70
+
71
+ | Tarea | Anterior | Nuevo | Fecha | Notas |
72
+ |-------|----------|-------|-------|-------|
@@ -0,0 +1,69 @@
1
+ # ============================================================
2
+ # PRESET: enterprise
3
+ # Para: equipos grandes, compliance, auditoría, producto crítico.
4
+ # Filosofía: proceso completo. Nada llega a prod sin revisión.
5
+ # ============================================================
6
+
7
+ preset:
8
+ nombre: enterprise
9
+ descripcion: "Equipo grande o producto crítico. Proceso completo con auditoría."
10
+ casos_de_uso:
11
+ - "Equipo de 8+ desarrolladores"
12
+ - "Producto con datos sensibles (fintech, healthtech, legaltech)"
13
+ - "Compliance requerido (SOC2, ISO 27001, HIPAA, GDPR)"
14
+ - "Sistema que no puede fallar (infraestructura crítica)"
15
+
16
+ agentes:
17
+ arquitecto:
18
+ activo: true
19
+ modelo: opus
20
+ disenador-api:
21
+ activo: true
22
+ modelo: sonnet
23
+ asesor-datos:
24
+ activo: true
25
+ modelo: opus
26
+ desarrollador-backend:
27
+ activo: true
28
+ modelo: sonnet
29
+ desarrollador-frontend:
30
+ activo: true
31
+ modelo: sonnet
32
+ operaciones:
33
+ activo: true
34
+ modelo: sonnet
35
+ tester:
36
+ activo: true
37
+ modelo: sonnet
38
+ revisor:
39
+ activo: true
40
+ modelo: opus # revisión profunda siempre
41
+ critico:
42
+ activo: true
43
+ modelo: opus # análisis de riesgos en todo
44
+ seguridad:
45
+ activo: true
46
+ modelo: opus # auditoría en cada cambio sensible
47
+ documentador:
48
+ activo: true # docs formales requeridas
49
+ modelo: sonnet
50
+ investigador:
51
+ activo: true
52
+ modelo: sonnet
53
+
54
+ comportamiento:
55
+ deteccion_tamano_automatica: true
56
+ ruta_rapida_micro: false # incluso cambios micro pasan por el flujo
57
+ numeracion_especificaciones: "ambos" # fecha + secuencial para trazabilidad
58
+ requerir_aprobacion_plan: true
59
+ requerir_aprobacion_tareas: true # aprobación explícita del plan de tareas
60
+ flujo_minimo: false
61
+ requiere_analizar: true # /sdd.analizar obligatorio antes de implementar
62
+ requiere_verificar: true # /sdd.verificar obligatorio al final
63
+
64
+ calidad:
65
+ cobertura_tests_minima: 85
66
+ permitir_warnings_lint: false
67
+ permitir_codigo_comentado: false
68
+ longitud_funcion_maxima: 40 # funciones más cortas, más legibles
69
+ longitud_archivo_maxima: 300
@@ -0,0 +1,63 @@
1
+ # ============================================================
2
+ # PRESET: lean
3
+ # Para: proyectos personales, prototipos, indie hackers,
4
+ # MVPs con un desarrollador.
5
+ # Filosofía: velocidad > proceso. Sin fricción innecesaria.
6
+ # ============================================================
7
+
8
+ preset:
9
+ nombre: lean
10
+ descripcion: "Proyecto personal o prototipo. Velocidad máxima, proceso mínimo."
11
+ casos_de_uso:
12
+ - "Side project / indie hacker"
13
+ - "Prototipo para validar idea"
14
+ - "Proyecto de aprendizaje"
15
+ - "MVP con un solo desarrollador"
16
+
17
+ # Solo los agentes esenciales
18
+ agentes:
19
+ arquitecto:
20
+ activo: true
21
+ modelo: sonnet # sonnet en lugar de opus — decisiones más simples
22
+ disenador-api:
23
+ activo: true
24
+ modelo: sonnet
25
+ asesor-datos:
26
+ activo: true
27
+ modelo: sonnet # sonnet OK para BDs simples
28
+ desarrollador-backend:
29
+ activo: true
30
+ modelo: sonnet
31
+ desarrollador-frontend:
32
+ activo: true
33
+ modelo: sonnet
34
+ operaciones:
35
+ activo: false # configura el CI tú mismo
36
+ tester:
37
+ activo: true
38
+ modelo: sonnet
39
+ revisor:
40
+ activo: false # sin revisión formal — tú eres el revisor
41
+ critico:
42
+ activo: false # sin análisis de riesgos formal
43
+ seguridad:
44
+ activo: false # revisión básica en tu cabeza
45
+ documentador:
46
+ activo: false
47
+ investigador:
48
+ activo: false # no hay equipo que necesite el contexto documentado
49
+
50
+ comportamiento:
51
+ deteccion_tamano_automatica: true
52
+ ruta_rapida_micro: true
53
+ numeracion_especificaciones: "secuencial"
54
+ requerir_aprobacion_plan: false # no pide confirmación — avanza solo
55
+ requerir_aprobacion_tareas: false
56
+ flujo_minimo: true # salta /sdd.analizar por defecto
57
+
58
+ calidad:
59
+ cobertura_tests_minima: 60 # umbral relajado
60
+ permitir_warnings_lint: true # no bloquea por warnings
61
+ permitir_codigo_comentado: true
62
+ longitud_funcion_maxima: 80 # más flexible
63
+ longitud_archivo_maxima: 600